RJHQ admin · hand-off

RJ Laravel Admin · design hand-off Reference

The design for the new standalone admin at admin.rjmtm.com (staging stg-admin.rjmtm.com), built on the documented admin REST API. Design only: a separate frontend team builds it. This page is the one front door: every live board, the pack files and the status of each decision.

325live pages mapped21modules1,083actions11archetypes36kit families34flagship rows86proposals

Build order (recommended)

  1. @rj/admin-kit package (tokens, primitives, F1 composites)
  2. Shell (permission-shaped from /admin/me/menu, rail, header, job tray, ⌘K)
  3. Orders flagship (index + order page)
  4. Tickets
  5. Designs
  6. Pricing
  7. Archetype waves 1 → 4 (page map)

Rule: invent nothing. Real statuses, fields and buttons only; the truth docs are the source. Anything beyond today's admin is in Proposals, tagged UI-only · needs-backend · needs-a-decision.

Direction · 4b·R HQ Lockup + labelled rail Decided

White header with the white RJ HQ · Master admin corner; the exact DTC navy #0E1729 sidebar; a 76px collapsed rail with a label under every icon; 2b ultra density (12.5px body, 30px rows) with comfortable as a token mode; a light tape-measure motif. Picked by Frank in chat, 2026-10-18 (round 2, baseline 2b).

Foundations · tokens, themes, density Decided

One token file, two themes, two densities. Laravel (:root): navy #0E1729 pinned on sidebar + primary, steel #2C4B86 for selection and focus only, grey ground #EDF0F4, white containers. DTC ([data-theme="dtc"]): Midnight green #08120E, shipped to production 2026-10-18. Density: compact is the Laravel default; [data-density="comfortable"] per person, always on phone. Type: Archivo (titles, buttons, never wide) · IBM Plex Sans (reading) · IBM Plex Mono (ids, codes) · PingFang SC / Noto Sans SC for 中文.

primary · sidebar#0E1729steel (focus, selection)#2C4B86ground#EDF0F4selected row#E9EEF8success#21654Cwarning#83550Fdestructive#A2323Finfo#335794DTC Midnight green#08120E

Kit · F1 component kit v4 (@rj/admin-kit) Decided · tag-glyph added; job tray accepted

37 F1 families on top of the 86 components inherited by name from the DTC kit v4. Every specimen: desktop + phone, both densities, EN + 中文, long strings, permission denied. CONTRACT.md is the component spec (name, props, states, shadcn/Radix mapping, package underneath). Latest: kit v4 adds the tag-glyph family (TagGlyph + TagGroup: one fixed square per row tag, ⚡ · R · +, centred, never clipped; used by Orders round 3); the job tray and the notifications panel are resized to real data and accepted by Frank (see KIT-CHANGELOG). The kit lives in its own repo, RJmtm/admin-kit (decided by Frank, 2026-10-18), published as a versioned package to GitHub Packages and installed by every app. The patterns catalogue lists every power-up the kit supports.

Archetypes · 11 page patterns Decided

Decision B approved for every non-flagship page (Frank, 2026-10-18). Locked layouts: A01·a full-width table · A02·a tabs · A03·a section nav left · A06·a table of runs · A11·a 3-pane. A07 gantt folds into A05 as its timeline variant.

ArchetypePagesHero
A01 Index table103/admin/orders
A02 Record detail18/admin/orders/{order}
A03 Create / edit form137/admin/designs/{design}/edit
A04 Wizard / import / bulk13/admin/designs/bulk-hub
A05 Dashboard / report13/admin/dashboard
A06 Live job / run monitor7/admin/orders/print-jobs
A08 Media / photo review2/admin/vision-checks/results
A09 Settings17/admin/settings
A10 Preview / document7/admin/email-templates/{templateKey}/edit
A11 Inbox / thread1/admin/tickets/{ticket}
A12 Matrix / grid editor7/admin/pricing/create
Archetypes · 11 page patterns contact sheet

Flagship · Orders index Round 3 live (tags fixed) — awaiting Frank

Round 3 is live at this URL: Frank's 18 points, with the row tags fixed (kit tag-glyph: equal squares, centred, three never clip). Awaiting Frank. Round 2 (the quieter pass) stays at /r2/; round 1 at /r1/ (accepted with defaults).

12 open questions for Frank, each with a recommended default (see the R1 notes).

Flagship · Orders index contact sheet

Flagship · Order page (order detail) Round 3 live (tags fixed) — awaiting Frank

A02·a tabs + front matter + side panel; the action model, 11 modals, settlement with an Idempotency-Key. Same sheet as Orders. Round 3 live with the Orders sheet (awaiting Frank); round 2 at /r2/, round 1 at /r1/.

Flagship · Support tickets Round 2 accepted by Frank

A11·a 3-pane inbox: list · thread · context. Round 2 (the quiet pass) is live at this URL and accepted by Frank ("happy with this", 2026-10-18); round 1 stays at /r1/.

12 open questions for Frank, each with a recommended default (see the R1 notes).

Flagship · Support tickets contact sheet

Flagship · Designs (every designs-module page) r1 approved + r2 (21 pages) pre-approved

Round 1 approved by Frank. All 25 designs-module pages are flagship: round 1 drew index, setup journey, create, edit, swatch rows and Bulk Hub; round 2 draws the other 21 pages (combinations, component default rules, design blockers, component list and classes, PT colours and components), pre-approved by Frank (2026-10-19). Round 2 is at /r2/.

12 open questions for Frank, each with a recommended default (see the R1 notes).

Flagship · Designs (every designs-module page) contact sheet

Flagship · Pricing Round 3 accepted by Frank (two prongs; fabric = export/import only)

Round 3 is live at this URL and accepted by Frank: two prongs. Design pricing keeps its editor; fabric combination pricing is export / import only (no on-screen grid), decided by Frank 2026-10-18. Rounds 1 and 2 stay at /r1/ and /r2/.

13 open questions for Frank, each with a recommended default (see the R1 notes).

Flagship · Pricing contact sheet

Flagship · Gantt Round 2 accepted

Frank chose G1 Ledger (2026-10-18: "I love LEDGER G1"). All G1 boards (G1a-G1f + G1p phone) are the spec, with a view switcher Orders | Factories (G2) | Countdown (G3) on the Gantt page; countdown and factory load also as dashboard widgets; current dashboard content preserved. Round 2 (a 960px peek that holds every real field, the three views) is live at this URL and accepted by Frank (2026-10-19: "amazing, perfect, I accept all of this"); round 1 stays at /r1/.

Flagship · Dashboard Round 2 accepted; dashboard power-ups parked

Round 2 accepted by Frank (2026-10-19: "I green light the dashboard, I accept it"): the default dashboard D1–D5 stands as drawn, keeping today's dashboard content plus the factory countdown and load widgets. The 18 dashboard power-ups are parked ("skip for now") and kept in the kit's patterns catalogue for later.

Flagship · Dashboard contact sheet

Power-ups · 24 basic + 6 advanced adopted Decided

Frank loved all 24 round-1 patterns: ⌘K, Find order, shortcuts + ? sheet, recent/pinned, saved views, URL filter chips, job tray, bulk bar with batch progress, prepare → open PDF, peek sheet, hover cards, copy ID, activity panel, empty states, density switch, inline edit + undo, conflict banner, confirmation ladder, unsaved bar, live/stale/offline banner, my-timezone times, EN/中文, motion set, skeletons. Advanced round (Frank, 2026-10-18): 6 adopted (#05 one search inside the header search bar / ⌘K, #08 My home, #13 impact before a bulk write, #14 undo a whole bulk run, #17 paste from Excel, #21 totals for the filtered set), 3 maybe (#18, #19, #20), 20 parked and kept logged. Backend helpers: 8 to file now (H01 H02 H03 H04 H06 H16 H17 H21), 1 decide later (H22), 19 backlog. All 53 patterns are in the kit's patterns catalogue.

Page map · the integration checklist (325/325) Decided

One row per live page → wave → archetype·layout → hero → components → API operations (catalogue operationIds) → needs-backend → permission → phone mode. 325/325 complete (checker phase-3/waves/check_page_map.py OK); 1,077 of 1,083 actions mapped to an operation; 34 flagship rows point at phase-3/flagships/<area>/. Phone: 15 dedicated · 156 read-mostly · 154 desktop-only notice.

Proposals · 86 tagged items Reference

UI-only 0 · needs-a-decision 0 · needs-backend 0. Every item has a recommended default and a source. The needs-backend items are written out as ready-to-file api-request issues for RJmtm/newadmin-api-kit (not filed yet).

Hand-off · status and open decisions Reference

ItemStatus
Direction 4b·R · tokens · kit v1 · archetypes (non-flagship) · power-ups (24) · menu T-d + T-f · stackDecided
Orders index + order pageRound 3 live (tags fixed), awaiting Frank; r2 at /r2/, r1 at /r1/
TicketsRound 2 accepted by Frank (2026-10-18); r1 at /r1/
DesignsRound 1 approved; round 2 (the other 21 pages) pre-approved by Frank (2026-10-19), at /r2/
PricingRound 3 accepted by Frank (two prongs; fabric = export/import only); r1 / r2 at /r1/ · /r2/
KitTag-glyph family added (kit v4); job tray + notifications accepted by Frank
Gantt directionG1 Ledger chosen by Frank (2026-10-18), with view switcher Orders | Factories | Countdown and dashboard widgets; round 2 accepted by Frank (2026-10-19)
DashboardRound 2 accepted by Frank (2026-10-19); the 18 dashboard power-ups parked in the kit patterns catalogue
Kit repo locationDecided by Frank (2026-10-18): own repo RJmtm/admin-kit, versioned package on GitHub Packages; not created yet
Advanced power-upsDecided by Frank (2026-10-18): 6 adopted, 3 maybe, 20 parked; backend helpers to file now: 8

Built 2026-10-18 23:55 UTC · desktop view