> ## Documentation Index
> Fetch the complete documentation index at: https://docs.seamind.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# Assignments

> Create and manage crew-ship assignments and training

Assignments are the central concept in Seamind. An assignment connects a crew member to a ship with a role and date range. Once an assignment exists, you can attach training courses to it.

**Path:** Admin sidebar > **Assignments**

An assignment connects a crew member to a ship with a role and date range. See [Key Concepts](/key-concepts#assignments) for details.

## Creating an assignment

<Steps>
  <Step title="Open the dialog">
    Click **New Assignment** in the top right.
  </Step>

  <Step title="Fill in the fields">
    Select a **Crew Member**, **Ship**, **Role on ship**, then set the **Sign on date**, **Sign off date**, and **Program due date**.
  </Step>

  <Step title="Save">
    Click **Create Assignment**.
  </Step>
</Steps>

## Understanding the fields

### Roles

Seamind supports 12 maritime roles:

| Deck            | Engine          | Other   |
| --------------- | --------------- | ------- |
| Captain         | Chief Engineer  | Cook    |
| First Officer   | Second Engineer | Steward |
| Second Officer  | Third Engineer  |         |
| Third Officer   |                 |         |
| Bosun           |                 |         |
| Able Seaman     |                 |         |
| Ordinary Seaman |                 |         |

### Dates

* **Sign on date** — the date the crew member joins the ship
* **Sign off date** — the date the crew member leaves the ship
* **Program due date** — the deadline for all training assigned through this assignment. This is the date that appears when tracking overdue training.

### Status

Assignments show as **Active** or **Completed** based on whether the sign off date has passed.

## The assignments table

| Column            | Description              |
| ----------------- | ------------------------ |
| **Crew Member**   | Name and email           |
| **Ship**          | Ship name and IMO number |
| **Role**          | Their role on the vessel |
| **Sign on date**  | When they board          |
| **Sign off date** | When they leave          |
| **Status**        | Active or Completed      |

## Row actions

Each assignment row has three actions:

* **View Courses** (book icon) — opens a side panel to manage which courses are assigned
* **Edit** (pencil icon) — update the role, dates, or due date
* **Delete** (trash icon) — remove the assignment after confirmation

## Managing courses on a single assignment

1. Click the **View Courses** button on an assignment row.
2. A side panel opens showing the courses currently assigned to this crew member on this ship.
3. Click **Add Courses** to pick from available courses.
4. Each course has a **due date picker** — set a per-course deadline, or leave it empty to fall back to the assignment's sign-off date.
5. To remove a course, click the trash icon next to it.
6. Click **Save** to apply changes, or close the panel to discard.

This is how individual training gets assigned — one crew member at a time. For assigning training in bulk, see the Manage Courses panel below.

## Filtering and searching

**Filters:**

* **Status** — show Active or Completed assignments
* **Ship** — filter by one or more ships (searchable dropdown)

**Search:** Type in the search bar to find assignments by crew name, ship, or role.

## Bulk actions

Select multiple assignments using the checkboxes, then choose from three bulk actions in the bar that appears:

| Action             | What it does                                                                                                                     |
| ------------------ | -------------------------------------------------------------------------------------------------------------------------------- |
| **Update**         | Change role, sign on date, or sign off date for all selected. Check the fields you want to change — unchecked fields stay as-is. |
| **Manage Courses** | Opens a unified panel to add, remove, and set due dates for courses across all selected assignments.                             |
| **Delete**         | Remove all selected assignments after confirmation.                                                                              |

### Bulk Update details

The Bulk Update panel lets you selectively change fields:

1. Check the box next to each field you want to update.
2. Set the new value (or check "Clear this date" to remove a date).
3. Click **Update**.

Only checked fields are modified. Everything else stays unchanged.

### Manage Courses panel

The Manage Courses panel is a single place to handle all course operations across your selected assignments.

#### Adding courses

* Click **Add Courses** to pick individual courses from a searchable list.
* Click **Add from Program** to add all courses from one or more training programs. Courses added from a program keep their curriculum association (shown as "via Program Name").
* Newly added courses appear in the list with a green **NEW** badge.
* Courses already assigned are automatically excluded from the picker — no duplicates.

#### Setting due dates per course

Each course in the list has its own date picker, so you can set different deadlines for different courses.

* **Set a date:** Pick a date in the field next to the course. It will apply to that course across all selected assignments when you save.
* **Clear a date:** Click **Reset** next to an existing date to remove the deadline.
* **"Varies across assignments":** If the same course has different due dates across the selected assignments, the date field appears empty with an amber hint. Setting a date will unify it across all assignments.

#### Removing courses

Click the trash icon on any course to remove it. On save, it's removed from all selected assignments. Assignments that don't have the course are silently skipped.

#### Saving

Click **Save Changes** to apply everything at once. A toast notification summarizes what happened — for example: *"Assigned 3 course(s), Removed 1 course(s), Updated 2 due date(s) across 5 assignment(s)."*

If you close the panel with unsaved changes, a confirmation dialog asks whether you want to discard.

## Deleting assignments

1. Click **Delete** on the row, or select multiple and use the bulk Delete action.
2. Confirm the deletion.

Deleting an assignment does not delete the crew member or the ship — it removes the connection between them.

## Exporting

Click **Export CSV** to download. Columns: Crew Member, Email, Ship, Role, Sign On, Sign Off, Status.

## Common mistakes

| Mistake                      | How to avoid it                                                                                                                            |
| ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
| Missing due date             | Always set a program due date. Without one, you can't track overdue training.                                                              |
| Duplicate assignments        | If a crew member is already assigned to a ship, creating another assignment for the same ship is usually a mistake. Check the table first. |
| Forgetting to assign courses | Creating an assignment doesn't assign any training. Go to View Courses or use bulk Assign Courses after creating assignments.              |
