Import contract
Next.jsimport "@12pm/design/tokens.css";
import { BrandMark, Button, StatusChip, TextField } from "@12pm/design";const nextConfig = {
transpilePackages: ["@12pm/design"],
};How 12pm-website, 12pm-order, 12pm-partner and 12pm-admin consume @12pm/design tokens and primitives without creating local visual authorities.
The website, order, partner and admin frontends consume this package as their shared visual source of truth. Product-specific layout can live locally, but token and primitive authority stays in 12pm-design.
import "@12pm/design/tokens.css";
import { BrandMark, Button, StatusChip, TextField } from "@12pm/design";const nextConfig = {
transpilePackages: ["@12pm/design"],
};Load the generated CSS file in the root app shell so variables are available before product styles render.
Import BrandMark, Button, StatusChip and TextField from the package instead of rebuilding them locally.
Keep the linked private package in the Next.js transpile list while the repos consume pinned Git revisions.
Use semantic system tokens first, then component tokens when a local layout composes around a primitive.
Canvas, surface, text, border, action and state colors should come from system tokens.
Meal warmth stays in the Sun dot, separators and highlights; dense workflow controls stay readable.
Offer codes, order IDs and audit references use the exported data-id typography role.
Frontend repos should not define competing CSS variables for 12PM brand, action or component roles.
Use token names in product CSS instead of copying Ink, 12PM Red, Sun, Cream or state colors.
Add missing shared primitives in 12pm-design first when the same pattern appears across surfaces.
Use active BrandMark, Cream canvas, 12PM Red accents and measured Sun cues without creating local token values.
--12pm-sys-color-brand-red / --12pm-sys-color-brand-sun / --12pm-sys-color-brand-creamUse larger tap targets, one primary action per step and warmer meal cues around menu discovery.
--12pm-sys-color-canvas / --12pm-sys-color-action-primary / --12pm-comp-button-height-largeUse form primitives, status chips and neutral surfaces for offer setup, price book fields and pickup scope.
--12pm-comp-input-height-default / --12pm-sys-color-surface / --12pm-sys-color-borderUse compact typography, clear status tones and restrained action color for review, override and support views.
--12pm-sys-type-data-id-* / --12pm-sys-color-warning / --12pm-sys-color-danger