RJ Laravel Admin · design hand-off

DecidedIn progress / needs workAwaitingDeferred / reference

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 rows82proposals

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 v1 (@rj/admin-kit) Decided · job tray + notifications accepted by Frank

36 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: the job tray and the notifications panel are resized to real data and accepted by Frank (see KIT-CHANGELOG). Open: the kit's repo location (deferred, default RJmtm/admin-kit).

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 2 live (quieter) · r1 accepted w/ defaults, more work later

Round 2 is live at this URL (the quieter pass: in-UI helper text removed, same boards, layout and data). Round 1 stays at /r1/: accepted with defaults, more work later.

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 2 live (quieter) · r1 accepted w/ defaults, more work later

A02·a tabs + front matter + side panel; the action model, 11 modals, settlement with an Idempotency-Key. Same sheet as Orders (canvas page 2). Round 2 live (quieter); 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) Round 1 approved by Frank

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; the other 21 pages are queued for designs round 2.

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 G1 chosen · round 2 in progress

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 is in progress (bigger detail peek, views, dashboard).

Power-ups · all 24 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: awaiting picks. Backend helpers H01–H28 in build order.

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 · 82 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 2 live (quieter); r1 at /r1/, accepted with defaults, more work later
TicketsRound 2 accepted by Frank (2026-10-18); r1 at /r1/
DesignsRound 1 approved by Frank (21 pages queued for designs round 2)
PricingRound 3 accepted by Frank (two prongs; fabric = export/import only); r1 / r2 at /r1/ · /r2/
KitJob tray + notifications resized to real data; accepted by Frank
Gantt directionG1 Ledger chosen by Frank (2026-10-18), with view switcher Orders | Factories | Countdown and dashboard widgets; round 2 in progress (bigger detail peek, views, dashboard)
Kit repo locationDeferred: recommended RJmtm/admin-kit
Advanced power-upsAwaiting picks

Built 2026-10-18 22:35 UTC · brand-006-rj-laravel-admin · design only · phone view