Everything below reflects what's live in the app today. Sections are grouped by topic rather than numbered β jump to whichever one you need from the list on the left.
Start here
Getting started
Sign in, then use the left sidebar for everything β it's the only navigation surface in the app.
Signing in
Use the Sign in with Google button on the login screen. If Google Sign-In isn't available to you, click ΔΔng nhαΊp bαΊ±ng mαΊt khαΊ©u (Planner/Viewer) to reveal a password field instead β this fallback only covers the Planner/Viewer roles (fixed passwords); every other role, including Admin, signs in with Google.
The sidebar
Click the β° icon (top-left) to expand or collapse the sidebar. It starts collapsed by default. All four working tabs β Gantt Schedule, Dashboard, Launch Schedule, LAM Schedule β live here, along with a Dealer View link and, for Planners and Admins, a Setting section β Holidays for both, but Users and both Import Excel buttons are Admin-only (2026-09-19: moved off Planner).
Open in new Tab
A toggle at the bottom of the sidebar. Turn it on and clicking any sidebar item opens that tab in a fresh browser tab instead of switching in place β handy for keeping the Gantt open in one tab while checking the Dashboard in another. It's a personal preference remembered on your device only.
Brand / Factory toggles
Top of the screen β filter everything to Seawind or Corsair, and to the VN or Turkey factory, or show All of either.
Help
The β Help button (top-right, next to your account chip) opens this page in a new tab, any time.
Reference
Roles & permissions
One account, one role β set by an Admin under Users (sidebar β Setting). This is a summary; the full field-by-field breakdown is in the Reference section further down.
| Role | Main Gantt data | Edit boats | Contract/payment fields | Snapshots | Holidays | Users / Import Excel | LAM Schedule tab |
|---|---|---|---|---|---|---|---|
| Admin | Live | β Full | β* | Save + browse | β | β | β Edit |
| Planner | Live | β Full | β* | Save + browse | β | β | β Edit |
| Viewer | Latest snapshot | β | β | Browse only | β | β | Latest snapshot |
| BOD_CS | Live | Partial* | β | β | β | β | β |
| Production | Latest snapshot | β | Hidden | Browse only | β | β | Latest snapshot |
| LAM | Latest snapshot | Hidden fin. cols | Hidden | Browse only | β | β | β Live edit |
* Contract Date and the Contract/Deposit Received checkboxes (Edit Settings modal) are edited by BOD_CS only β not even Planner/Admin can touch those particular fields. Everything else in that modal, Planner/Admin can edit and BOD_CS cannot. The WO Status column on the Gantt (STD OPT / CFRM OPT) is also BOD_CS-only (2026-09-19 β was Planner-only before). Separately, the whole π° Sale Info cluster on the Dashboard (Ctr SOC/Ctr Compl, Paid/Owing/Next Pmt, Retail/Commission/W-S Value, Sale Notes) is also BOD_CS-only. See Edit Settings modal fields.
Admin (2026-09-19) is Planner plus two extra powers: π₯ Users and both β¬ Import Excel buttons (main Boats import + Launch Schedule import) β Planner lost those, everything else Planner can do, Admin can do too.
"Live" vs "Latest Saved" is the single biggest thing to understand. Planner and BOD_CS always see the current, real-time schedule. Viewer, Production and LAM instead default to whatever a Planner most recently saved as a named Snapshot β never the live data β and can browse older snapshots from there. This is independent of which columns/fields a role can edit: even where a control looks clickable, these three roles can never submit a change on the main Gantt.
Dealer accounts (Dealer SW / Dealer CO) never see this screen at all β signing in takes them straight to a separate, much simpler Dealer View page.
Production Schedule
Editing a boatPlannerBOD_CS (partial)
Most editing is Planner-only; BOD_CS has a narrow, specific slice.
Rescheduling a stage (Planner)
- Drag the right edge of a colored stage bar (LAM, A1βA4, FO1βFO4, Final) to resize it β later stages on that boat shift to match automatically.
- Drag the bar itself, or the left-edge handle, to shift the boat's entire remaining schedule at once.
- Click a bar to open a small popup and type an exact new length in weeks instead of dragging.
Inline dropdowns
- WO Status β STD OPT / CFRM OPT. BOD_CS only (2026-09-19 β was Planner-only before; Planner now sees it read-only, like everyone else).
- Signed Ctr β a simple β checkmark once the contract is signed. Planner/Admin and BOD_CS.
- Latest Var β the current revision, V1 through V20. Planner/Admin and BOD_CS.
The Edit Settings modal
Double-click a boat row on one of the SC# β¦ Volt columns (or right-click anywhere on the row) to open its full detail editor. What you can actually change inside depends on your role β see Edit Settings modal fields for the exact list. In short: BOD_CS can only touch Contract Date and the Contract/Deposit Received checkboxes here (Paid to Date/Amount Owing/Next Payment/Ctr SOC/Ctr Compl moved to π° Sale Info on the Dashboard, 2026-09-15). Planner can edit everything else in the modal (customer, engine, voltage, dealer, all WC stage dates, etc.) but β deliberately β not Contract Date or the two checkboxes.
Right-clicking a row also opens a context menu (Copy, Notes, Progress, Done, Delete) β Planner only. BOD_CS's right-click only ever opens the Edit Settings modal itself; the other menu items are hidden since they wouldn't do anything for that role.
Notes, progress & DONE
The π note-count badge, the % progress badge, and the DONE? button are all visible to everyone, but only a Planner can click into them to add a note, update progress, or mark a boat complete.
Production Schedule
The "Unsold" indicator
Flags boats already in production with no buyer lined up yet.
A boat counts as Unsold once its LAM stage date has already passed (production has started) while both Dealer and Customer are still blank. Such boats show a red Unsold badge in place of the Dealer name, on both the Gantt and the Dashboard. Click the π© Unsold toolbar button to filter either screen down to just these boats β the Dashboard also has a dedicated Unsold Value KPI card showing the total contract value tied up in unsold boats, always visible regardless of the filter.
Production Schedule
π° Sale InfoBOD_CS edits
A dedicated cluster of sale/commission fields on the Dashboard β added 2026-09-15.
Every row on the Dashboard (except for Production/LAM, who don't see financials at all) has a π° icon on the right β faint/grey when a boat has no Sale Info yet, bold/highlighted once anything is filled in. Click it to open the Sale Info modal, a blue-bordered box holding:
- Ctr SOC and Ctr Compl β the same baseline dates used by the Contract Baseline overlay on the main Gantt. These used to be set once on import and never touched again; now BOD_CS can edit them here, and the overlay reflects the new value immediately.
- Retail Value, W/S Value β sale-tracking dollar figures, not sourced from anywhere else in the app. Commission is calculated automatically = Retail β W/S (since 2026-09-25) β not typed; it stays blank (β) until both Retail and W/S are entered.
- Paid To Date, Owing Bal, Next Pmt Date, Next Pmt Amt β moved here from the Edit Settings modal (still BOD_CS-only, same underlying data).
- Sale Notes β a small π-style icon + count, click to open a nested notes list scoped just to this boat's sale info (separate from the general π Notes feature on the Gantt).
All dollar fields show a thousand-separator and 2 decimal places (e.g. $250,000.50). Date fields are picked from a calendar β unlike the WC stage dates elsewhere in the app, these accept any day, not just Saturdays β and display as DD/MM/YYYY.
Planner and Viewer can open the same modal to view it, fully read-only; Production/LAM never see the π° icon at all.
The same value fields (except the auto Commission) are also editable directly on the main Gantt, grouped together right after Ctr Compl in this order: Ctr SOC β Ctr Compl β Retail $ β W/S $ β Commission (auto) β Paid β Owing β Next Pmt (due date) β Amt Next (payment). Next Pmt's date and amount are two separate columns here (one combined cell in the modal). A π Sale Notes icon sits right after, opening the same nested notes panel as inside this modal. BOD_CS sees small inline inputs/date-pickers on the Gantt instead of plain text β it's the exact same underlying data either way, so editing on the Gantt or through this modal always stays in sync; use whichever is more convenient in the moment.
| Field | Source | Edit |
|---|---|---|
| Ctr SOC / Ctr Compl | Reused β same data as the Gantt's baseline columns | BOD_CS |
| Paid To Date / Owing Bal / Next Pmt Date / Next Pmt Amt | Reused β moved here from the Edit Settings modal | BOD_CS |
| Retail Value / W/S Value (Commission = Retail β W/S, auto) | New β not stored anywhere else in the app | BOD_CS |
| Sale Notes | New β separate sheet/thread, styled like but independent of the general Notes feature | BOD_CS |
Upload Sale Info (bulk, by SC#)
Sidebar β Dashboard toolbar β β¬ Upload Sale Info (BOD_CS only). Upload an Excel file with a SC# column plus the 8 Sale Info value columns (Sale Notes isn't uploadable in bulk β add those individually per boat). This is a full replace, not a merge: every matched SC# gets all 8 fields overwritten exactly as given, including blanking a field the file leaves empty. A summary after upload shows how many SC#s were updated and lists any that didn't match a boat.
Production Schedule
SnapshotsPlanner saves
A snapshot is a named, permanent, point-in-time copy of the schedule. It's how Viewer/Production/LAM see a stable version instead of a constantly-changing live view.
Saving a new version (Planner)
- Click πΈ Snapshot in the toolbar.
- Type a Name (required) and an optional Description.
- Click Save. This becomes the new "Latest Saved" version everyone else sees.
From the same modal, a Planner can also View any older snapshot read-only, or delete one with the β button.
Browsing versions (Viewer / Production / LAM)
You always land on the most recent snapshot, labeled Latest Saved (π) in a banner at the top. Click π Versions in that banner to pick an older, explicitly-named snapshot β while viewing one, a π Back to Latest Saved button appears to return. Filtering, sorting, column visibility, Week/Day view and exports all still work normally inside a snapshot β only editing is blocked.
Launch Schedule and LAM Schedule each keep their own, completely independent snapshot history β saving one doesn't affect the others.
Production Schedule
HolidaysPlannerAdmin
Click π Holidays to add a shutdown period: pick a Start (Sunday) and End (Saturday) date and a label, or edit/delete an existing entry. Marked weeks render as a green-striped "Holiday" band across every boat's timeline β this is a visual/scheduling reference only, it does not block dragging a stage onto those dates if overtime work happens anyway.
Production Schedule
Import ExcelAdmin
Admin-only (2026-09-19 β moved off Planner, along with Users below). Sidebar β Setting β β¬ Import Excel. Upload the Production Plan Excel file (any sheet containing "WC LAM" and "CUSTOMER PO" columns is auto-detected) β expected columns include SO Number, Customer PO, Model, Engine/Voltage, Dealer, Buyer, Date Due, Contract SOC/Completion, Launch Date, and the ten WC stage dates. The app shows a preview of the parsed rows before you confirm. The separate β¬ Import Excel button inside the Launch Schedule tab is Admin-only too.
Import is an upsert, matched by Customer PO: existing boats get updated, new ones get created β nothing is ever deleted by an import.
Production Schedule
Add BoatPlannerAdmin
Click + Add Boat for boats not sourced from ERP. Fill in SC# and Model (required), plus SO#, Brand, Factory, Prod Line, Workers, Contract Date, Done Date, Date Due, Dealer, Buyer, and a Start LAM date (auto-aligned to the app's Saturday-anchored week). Right-click any existing boat β Copy pre-fills this same form from it (minus SC#/SO#) as a shortcut for near-duplicate entries.
Done Date β Date Due β easy to mix up since they sit right next to each other in this form. Done Date (the field renamed from "Approved Completion" on 2026-09-22, same data as the Gantt's DONE? column) means the boat is ALREADY finished and approved β set it only via β Mark Done, never here, unless you're certain. A boat with Done Date set disappears from the live Gantt (hidden by default, same as any other completed boat β the DONE BOATS toggle reveals it again). Date Due is just the currently-planned finish date for a boat still in progress β that's almost always the one you want.
Production Schedule
UsersAdmin
Admin-only (2026-09-19 β moved off Planner). Sidebar β Setting β π₯ Users. Add someone by email and role (Planner, Admin, Viewer, BOD/CS, Production, LAM, Dealer SW, Dealer CO); role and the Active toggle are editable inline any time, and a π button removes an account entirely. Dealer roles additionally need a Dealer Name that exactly matches the DEALER value used on boats β that's how a dealer login gets scoped to only their own boats. Admin itself signs in with Google only (no fixed password, unlike Planner/Viewer) β the very first Admin has to be set by editing the USERS sheet directly in Google Sheets, since an empty Users list means nobody can open this page yet to add one.
Production Schedule
Exporting
β¬ Excel produces a plain flat data spreadsheet β one row per currently-filtered boat, every field as a column. β¬ Gantt XLS instead reproduces the visual chart exactly as displayed β frozen columns plus the colored week/day timeline. Both are available to every role, and both automatically omit Paid/Owing/Contract Date/Next Pmt for Production/LAM, matching what those roles see on screen.
Other tabs
Dashboard
KPI cards across the top (Total Boats, On Track, At Risk, Not Started, Contract Value, Hours Efficiency, and β when applicable β Unsold Value), followed by a sortable table: one row per boat with Status, Forecast Finish, "vs Contract"/"vs Approved" delta badges, and the same financial columns as the main Gantt. Use the free-text filter box or the shared Brand/Factory toggles to narrow it down; click π© Unsold to see only unsold boats. The last column, π°, opens each boat's Sale Info β hidden for Production/LAM.
Other tabs
Launch SchedulePlanner edits
A day-by-day grid for planning what happens around each boat's launch, independent of the main production timeline.
Rows are boats with a Launch Date set; columns are individual days. A Planner clicks a day to type a short activity (e.g. "Sea Trial") β the app auto-colors each distinct activity consistently. Multi-day tasks appear as one bar: drag its body to move it, its right edge to resize (pushing later tasks on that row), or a left-edge handle on the first block to shift the whole boat's schedule at once. A per-boat Copy tool duplicates one boat's whole schedule onto another; a per-boat Completed date plus a "Hide Completed" toggle round it out.
Import Excel here expects a differently-shaped file (a calendar sheet named "Launch scheduleβ¦", one column per boat) and is a full overwrite per boat/date, unlike the upsert behavior on the main Gantt import. Snapshots work the same way as the main Gantt, with their own independent history.
Other tabs
LAM ScheduleLAM + Planner edit
Day-by-day scheduling for the Lamination department, tracked independently of the main production timeline.
Boats are grouped by Model; each boat gets one row per configured Part (a lamination component, e.g. Hull, Deck). Click a day on a Part's row to open a task and pick an Operation from a shared dropdown (or add a one-off custom entry for just that boat) β a Days field lets you create a multi-day block in one step. Blocks drag/resize/shift the same way as Launch Schedule.
Above each model group, a thin Handover lane holds a small draggable tag per boat β drop it on the day LAM work was handed off to the next department. It's purely informational and doesn't affect any other tab.
The β LAM Master button (Planner + LAM) configures two things per model: the ordered Part list, and the shared Operations vocabulary used in every dropdown. A boat's model needs at least one configured Part before any rows appear for it. Snapshots here follow the same "Latest Saved" pattern as the other tabs, with their own independent history β Viewer/Production/LAM default into it read-only.
Other tabs
Dealer View
A completely separate, simplified page for Dealer SW / Dealer CO accounts.
After signing in, a dealer sees only their brand's in-stock boats, grouped by Model: row number, Model, SC#, Start LAM, and Completion β fully read-only, no edit controls of any kind. Filters: a Model dropdown, a free-text SC# search, and an Availability dropdown (within 3 / 6 / 12 months, based on Date Due). Any boat a Planner has marked "Hide from Dealer View" in the Edit Settings modal is excluded automatically.
Reference
Gantt column permissions
Every column on the main Production Schedule Gantt table. View = the column appears at all (independent of your personal Hide/Show Cols choice). Edit = you can actually change the value β remember that Viewer, Production and LAM can never submit any change regardless of what's marked here, since they're always on a read-only snapshot (see Roles & permissions).
PL=Planner AD=Admin VW=Viewer BC=BOD_CS PR=Production LM=LAM Β· Yes / No / (not just disabled β the column doesn't appear at all, and isn't recoverable via the column picker)
| Column | View PL | View AD | View VW | View BC | View PR | View LM | Edit PL | Edit AD | Edit VW | Edit BC | Edit PR | Edit LM | Notes |
|---|
Reference
Toolbar & feature permissions
Buttons, toggles and other actions outside the column grid itself. AD=Admin β mirrors Planner (PL) on every row except π₯ Users and the two β¬ Import Excel rows below, which are Admin-only (2026-09-19).
| Feature / button | Where | PL | AD | VW | BC | PR | LM | Notes |
|---|
Reference
Edit Settings modal fields
Opened by double-clicking a boat row on the SC# β¦ Volt columns, or right-clicking anywhere on the row. Only Planner/Admin and BOD_CS can open it at all β every other role never sees this dialog. Admin has exactly the same fields as Planner here β the "Planner" column below covers both. (Paid to Date, Amount Owing, Next Payment Date/Amount, Ctr SOC and Ctr Compl moved out of this modal on 2026-09-15 β they now live in π° Sale Info on the Dashboard.)
| Field | BOD_CS | Planner | Notes |
|---|
The split is deliberate and total: BOD_CS's seven fields (Contract Date, Paid, Owing, Next Payment Date/Amount, Contract Received, Deposit Received) are locked for Planner in this modal β even Planner can't edit those specific fields here. Every other field in the modal is the reverse: Planner-only, locked for BOD_CS.