INTO Consulting INTO Consulting
Start typing to search.

INTO Consulting / Web Apps + Platforms

Web-App System

A canonical product-design contract for INTO SaaS products, internal platforms, dashboards, admin tools, AI workspaces, and operational interfaces.

example-webapp-hero-proof

PRODUCT SYSTEM / SPECIMEN 01

Operations console pattern.

Operational editorial software in one composed working surface: app shell, command, evidence, and the next safe action — readable before it is explained.

  • 01One primary action per surface.
  • 02Evidence stays adjacent to the decision.
  • 03Glass for command and review; never as chrome.
INTO square mark
Client Readiness Operations Console
Owner Avery Evidence 82% Export blocked

Hold the client export until two citations are attached.

A blocked export keeps the system honest. The packet is ready; the proof isn't. Restore the missing citations before the artifact leaves the studio.

Design The Product Around The Next Safe Decision

INTO web apps should feel sparse, senior, evidence-led, and practical. The interface exists to help operators see work, understand evidence, govern AI output, and take the next safe action.

example-webapp-overview-thesis

OPERATING MODEL

Decision first, interface second

Govern records, workflows, approvals, evidence, AI proposals, client-visible outputs, and recoverable execution.

01 Decision

What can safely happen next?

02 Evidence

Which sources support it?

03 Owner

Who is accountable now?

04 Recovery

How does the system undo or repair?

NEXT SAFE ACTION

Approve internal preview only Client export stays blocked until citations pass.
Risk: finance variance Owner: Orion Evidence: 82% Rollback: prepared
Blocked Two citations missing

Use Mature Components Without Importing Their Personality

Component libraries can supply anatomy, accessibility patterns, and interaction discipline. INTO owns the typography, density, state language, containment, icon behavior, and product atmosphere.

example-webapp-reference-transfer

ANATOMY

Use shadcn/Radix structure for command, sheet, dialog, table, tabs, toast, skeleton, and forms.
Avoid Default shadcn styling, generic SaaS radius, imported visual personality, or badge-heavy demos.

CONTAINMENT

Use No box, hairline, full-width exhibit, then cards only for comparable peer items.
Avoid Nested cards, boxed fragments, decorative bento, and surfaces with no hierarchy.

SIGNAL

Use Petrol for action and state, saffron for caution or milestone, dark mode for focus and review.
Avoid Accent decoration, neon AI treatment, purple-blue futurism, or glowing command chrome.

GOVERNANCE

Use Decision, owner, evidence, permission, risk, recovery, and audit visible in the work surface.
Avoid AI chat as the whole product, silent execution, hidden citations, or irreversible actions.

Show The INTO-ified shadcn Layer

A modern INTO web app is not a generic shadcn demo and not an editorial web page with app labels. It uses mature component anatomy, then applies INTO typography, restrained petrol action, glass command focus, evidence states, and quiet operational density.

example-webapp-shadcn-component-kit

INTO-IFIED SHADCN

Modern primitives, governed states

Use shadcn and Radix for behavior. Use INTO for atmosphere. The visible app kit must include command, tabs, sheet, dialog, toast, skeleton, table row, and action states before an implementation is treated as complete.

  • Anatomy. Copy proven primitive structure, not visual personality.
  • Glass. Reserve it for command, review, media, and focus moments.
  • Action. One petrol primary per task surface.
  • State. Evidence, owner, risk, and recovery stay visible.

SHADCN PRIMITIVES / INTO ATMOSPHERE

Search actions, records, agents Ctrl K
Review blocked export Needs Orion approval
Open evidence packet 12 linked sources
Assign pricing variance Saffron caution

SHEET / EVIDENCE DRAWER

12 linked sources Right-side sheet on desktop. Full-height route on mobile. Glass surface, hairline border, inset highlight.

Lead With One Composed Product Scene

Future INTO apps should demonstrate complete workflows, not isolated component inventories. The first viewport should prove place, state, evidence, owner, AI activity, risk, and the next safe action.

example-webapp-responsive-proof-pair

DESKTOP WORK SURFACE

Decision cockpit

Route BReady for internal preview
Client exportBlocked

390PX MOBILE

Review Route B Evidence first. Action second.

BLOCKED STATE

Export held Permission and citation defects are visible before the action control.
example-webapp-workshop-ui
INTO square mark

OPERATIONS CONSOLE

Client Readiness
Search records, inspect evidence, or run a governed action Ctrl K
Owner: Avery Evidence: 82% AI agents: 4 active Client visible: blocked

Readiness cockpit

The screen gives the operator the full decision frame: what is blocked, what evidence exists, what AI proposes, what action is permitted, and how to recover.

Decision Hold client-visible export until the pricing note and security review are cited.
AI proposal Route B is ready if Finance accepts the variance note and Orion approves execution.
Recovery Assign reviewer, attach two sources, then re-run export preview.
3 blocked decisions 12 evidence links 1 client export held
example-webapp-agent-map
Research Source packet ready Needs citation check
Operations Route B prepared Awaiting approval
Finance Import variance found Saffron caution
Client Export locked Internal only
Agent activity is visible, but execution waits for human approval
example-webapp-timesheet-ui

TIMESHEET / APPROVAL

Week exception review

4 ready 1 blocked
Consulting hours awaiting review.
Person Mon Tue Wed Thu Fri State
Avery 6.0 7.5 4.0 6.5 5.0 Ready
Orion 8.0 7.0 7.5 0 4.0 Missing note
example-webapp-polling-ui

FORECAST / POLL

Route confidence

Live Evidence linked

Which route should move to client-visible review?

Route A24%
Route B58%
Route C18%
example-webapp-product-proof-gate

PRODUCT PROOF GATE

One dominant viewport first. Show the actual product job before component variants. Supporting examples earn their place only when they prove a different workflow or state.
Every specimen must contain pressure. Include blocked, partial, permission, conflict, sync, review, or recovery states. Perfect dashboards hide the work.
Mobile proof is mandatory. Desktop specimens require a 390px mobile equivalent that preserves the next useful decision instead of squeezing the full layout.

Dense, Legible, Token-Led

Web-app surfaces use brand tokens plus app-specific aliases for shell dimensions, control heights, row heights, focus ring, and surface states. Density is earned by alignment and hierarchy, not smaller text.

Decision Rule Reason
Top nav 3.5rem desktop, 3rem mobile Orient the operator without brand theatrics.
Sidebar 15.5rem expanded, 4rem rail Support peer navigation and compact workspaces.
Controls 2rem small, 2.5rem medium, 3rem large Keep repeated work compact without losing touch targets.
Tables 3rem default row, 2.5rem compact row Preserve scanning and keyboard focus under density.
Type floors 1rem body, 0.875rem table cells, 0.75rem chart labels, 0.875rem button labels Density cannot be solved by microscopic text.
Buttons Inline-flex row, label first, optional trailing icon; one primary action per surface Prevent stacked icon-label buttons, centered badge actions, and petrol used as decoration.
Radius Small radius, no pill default Avoid generic SaaS softness and badge clutter.
Skeleton / hover --into-app-surface-skeleton and --into-app-surface-hover Loading and hover states stay theme-aware without shimmer or raw color values.
Overlay / scrim --into-app-surface-overlay and --into-app-surface-scrim Dialogs, sheets, blocked states, and background dimming stay consistent in light and dark mode.
Drop and selected state --into-app-surface-drop-target and --into-app-selected-outline Drag/drop, selected rows, active filters, and current-path outlines do not compete with the primary action.

Density Modes Preserve The Baseline

Compact and comfortable density use the same 0.5rem structural baseline. Compact tightens repeated work by reducing gaps and padding; it does not shrink text below the published floors or remove labels, focus, captions, helper text, or recovery states.

Mode Use When Tokens Guardrail
Compact Tables, queues, command lists, traces, and repeated operations where scan density helps the operator. --into-density-compact-control, --into-density-compact-row, --into-density-compact-gap, --into-density-compact-padding Touch-heavy surfaces still use --into-app-touch-target; dense text never drops below type floors.
Comfortable Default app review, approval, prompt composition, evidence panes, media preview, and mixed desktop/mobile work. --into-density-comfortable-control, --into-density-comfortable-row, --into-density-comfortable-gap, --into-density-comfortable-padding Use spacing and hierarchy before adding cards; comfortable is not a decorative roomy dashboard.
  • Compact tightens by roughly one baseline step for gaps and padding compared with comfortable mode.
  • Density is a component prop such as density="compact" or density="comfortable", not a per-screen pile of arbitrary classes.
  • Mixed-density screens keep the primary decision comfortable and repeated support surfaces compact.

App Shell, Navigation, And Command Bar

The shell keeps place, action, and evidence visible. It uses landmarks, current-path signals, and quiet command surfaces before adding containers.

example-webapp-app-shell
INTO square mark Workspace / Client Readiness
Search Command User

CLIENT / Q2 READINESS

Three workstreams need approval before client rollout.

Owner: Avery. Updated 14 May 2026. Evidence coverage: 82%. Client-visible export is blocked.

Search workstreams Status: needs review Owner: all
Intake Review Approve Execute
BLOCKER Data import needs owner
READY CRM handoff approved
AI REVIEW Route change awaiting evidence

Self-Audit Before Implementation

The web-app system must be complete enough that a coding AI can build required applications without inventing interface logic, state behavior, or visual hierarchy.

Audit Question Verdict Implementation Risk Repair Encoded Here
Light and dark visual tokens Repaired Builders would invent skeleton, overlay, hover, drop-target, and selected-outline colors per app. Theme-aware app aliases now exist in tokens for skeletons, hover, overlays, scrims, drop targets, and selected outlines.
Component variants Repaired Buttons, drawers, tables, command palettes, approvals, and AI workspaces could diverge across products. Component State Matrix names variants, states, mobile fallback, and accessibility requirements.
Major interaction states Repaired Loading, partial, conflict, permission, sync, and reduced-motion behavior would be recreated inconsistently. Each primitive lists required default, hover, active, focus, loading, empty, error, success, partial, permission, conflict, sync, and reduced-motion states when relevant.
Workflow, approval, review, and AI-agent patterns Repaired Implementers could still treat AI as chat only or invent pattern-specific styling for streams, citations, traces, model pickers, refusals, feedback, and artifacts. AI Interface Patterns routes every AI-native surface to brand/ai-interface-patterns.md while AI workspaces expose input, output, evidence, proposed change, approval gate, execution log, rollback, and reviewer state.
Complex app layout rules Pass Risk remains when teams fill the 12-column grid with equal-weight panels. Layout uses the containment ladder, dominant region, full-width exhibits for dense data, and mobile task priority.
Data-heavy screens, dashboards, forms, tables, timelines, and pipelines Repaired Timelines, boards, and pipelines were less explicit than tables and forms. Data Views And Pipelines defines required controls, states, and responsive behavior.
Animation implementation Pass Motion can become decoration if a job is not named. GSAP and PixiJS require a communication job, reduced-motion path, cleanup, static final state, and no decorative loops.
Accessibility requirements Pass Risk remains if developers use ARIA grids without keyboard models. Native semantics are preferred; ARIA grid is only allowed when cell navigation/editing is required and keyboard behavior is defined.
Responsive implementation rules Repaired Mobile could become a squeezed desktop with unusable tables and hidden actions. Component matrix assigns each dense primitive a mobile fallback: stacked records, sheets, focused routes, or takeaway-first summaries.
Reference application primitives Repaired The three reference apps could miss required screens, states, or proof criteria. Reference Application Contracts maps workshop, timesheet, and polling apps to required primitives and QA proof.
Executive design quality Repaired Examples could pass component coverage while still feeling like a generic SaaS dashboard. Product Proof requires one dominant viewport, real workflow pressure, and mobile proof before supporting specimens.

No final screen, implementation guide, or QA checklist is complete until this audit table passes for the target app.

AI Software Platform System

Use brand/ai-software-platform-system.md as the complete source specification for INTO-branded AI products, project systems, content operations, render pipelines, agent workspaces, dashboards, and collaborative operating tools.

Design philosophy

Operational editorial software: calm, premium, highly usable, AI-native, and governed. The interface must show what work exists, what AI is doing, what evidence supports it, what needs judgment, and what action is safe next.

Product assumption

React, TypeScript, Tailwind CSS, shadcn/ui-style copied components, CVA variants, Lucide icons, and Motion/Framer Motion are the default implementation bias when the project has no stronger local convention.

Visual direction

Warm Light is the work surface. Blueprint Dark is for command, focus, review, media preview, dramatic conclusion, and high-contrast operator moments. Petrol signals action/current/selected; Saffron signals caution, milestone, comparison, or render checkpoint.

AI posture

AI output is powerful only when it is governed: source/context, confidence when useful, proposed change, approval gate, execution log, audit event, rollback route, and "needs human judgment" state.

Required Specification Coverage

Required Section Where It Is Encoded Builder Contract
Design philosophy, assumptions, visual identity brand/ai-software-platform-system.md sections 1-3 and this section Do not produce generic admin surfaces, purple-blue AI tropes, or decorative dashboards.
Light/dark tokens, type, spacing, layout, surfaces, motion Source sections 4-8 plus Layout Tokens Use rem tokens, baseline rhythm, governed color usage, elevation, glass, glow, and reduced-motion behavior.
Core component library Source section 9 plus Component State Matrix Every primitive has purpose, anatomy, variants, states, responsive behavior, accessibility, motion, and example use.
AI-native, workflow, collaboration, analytics, forms, and states Source sections 10-15 plus AI Workspace, Data Views, and Collaboration Review Approval, evidence, versioning, prompt editing, render queues, citations, audit, and recovery are first-class UI patterns.
Accessibility, responsive rules, implementation guidance, examples, QA, self-audit Source sections 16-21 plus A11y, Mobile, Example Screens, and Implementation Guidance A coding AI must be able to build the first component library and screens without inventing missing state or layout logic.

Color Usage By Key Element

Element Warm Light Blueprint Dark Rule
App background --into-app-surface-page --into-app-surface-page Warm Light by default; Blueprint only for focused command, review, media, or dramatic moments.
Panel / card --into-app-surface-panel --into-app-surface-panel Use hairlines before shadows; cards only for peer modules or records.
Primary action --into-accent --into-accent One petrol-filled primary action per surface.
Selected/current --into-app-selected-outline or --into-accent-soft --into-app-selected-outline or --into-accent-soft Use text, rail, underline, outline, or soft surface before fill.
Accent soft surface --into-accent-soft / --into-accent-soft-hover --into-accent-soft / --into-accent-soft-hover Use for selected rows, citation marker backgrounds, disclosure surfaces, and quiet current-path affordances.
Accent pastel --into-accent-pastel --into-accent-pastel Use sparingly for high-contrast focus details, charts, and accessible dark-mode highlights; never as a new theme.
Warning / milestone --into-state-warning --into-state-warning Saffron marks caution, deadline, comparison, milestone, or render checkpoint; not buttons.
Overlay / modal scrim --into-app-surface-overlay --into-app-surface-overlay Dialogs, blocked states, and media previews use token-controlled overlays.
Floating / command surface --into-app-shadow-command --into-app-shadow-command Elevation supports command focus, dropdowns, popovers, sheets, and media inspection only.
Glass / glow --into-app-glass-surface, --into-app-glow-accent --into-app-glass-surface, --into-app-glow-accent Reserved for dark/photo/media stages, active command focus, render focus, and selected media frames.

AI Platform Component Library

Family Components Required Contract
Shell and navigation App shell, top nav, sidebar, breadcrumbs, command palette, page headers, tabs, accordions. Landmarks, current path, keyboard navigation, mobile route or sheet, and permission-limited states.
Actions and input Buttons, button groups, inputs, textareas, selects, comboboxes, checkboxes, toggles, date pickers, uploads. Labels, helper/error text, dirty/save state, loading, disabled reason, focus-visible, and touch target floor.
Data and workflow Tables, kanban boards, timelines, calendars, workflow pipelines, approval queues, audit logs, charts. Search, filter, sort, selection, owner, state, evidence, sync, conflict, partial data, and responsive fallback.
AI-native work Agent activity feeds, AI chat panels, prompt editors, output previews, model comparisons, context panels, citation blocks. Separate user input, AI output, evidence, proposed change, approval, execution log, rollback, confidence/caveat, and source state.
Overlays and feedback Toasts, tooltips, modals, drawers, empty states, loading skeletons, error states, confirmation states. Focus trap/restore where modal, live regions, recovery copy, no color-only state, and reduced-motion path.
Administration Settings screens, user management, permission matrices, version history, import/export flows, destructive actions. Role meaning, audit trail, dangerous-change confirmation, second approval when needed, restore preview, and safe fallback.

AI Interface Patterns Are Named Surfaces

Use brand/ai-interface-patterns.md for the canonical rules. This hybrid section shows how the patterns compose visually; the Markdown owns the detailed purpose, anatomy, states, motion, depth, color, accessibility, and anti-patterns.

example-ai-interface-pattern-stack

AI PATTERN STACK

Prompt, stream, source, trace, and artifact stay separate.

Model aware Human review required
Prompt input

Draft the client summary using attached sources. Stop before export if citations are missing.

Streaming output

The summary is ready as an internal draft. Two claims need source attribution before client-visible export.

GENERATION STATE

Streaming--into-ai-stream-chunk-interval, copy while streaming, stop available.
CitedInline markers route to source pane and confidence explanation.
Pattern Group Canonical Patterns Builder Contract
Input and command Prompt input, slash command menu, attachment panel, model picker. Use labelled controls, keyboard command navigation, token meters, source scope, permission states, and compact model disclosure.
Output and evidence Streaming text, citations, confidence, disclosure markers, refusal. Stream in readable chunks, attach citations to claims, explain uncertainty, label draft/final state, and offer a safe next step when declining.
Execution and audit Agent trace, tool call display, generation states, evaluation feedback, generated artifacts. Default traces collapsed, expose tool summaries before details, preserve audit, capture feedback as an evaluation record, and version generated artifacts.

Component Variants And States Are Explicit

A reusable app component does not exist in this system until its variants, states, mobile fallback, and accessibility contract are named.

example-webapp-state-storyboard
01 Default

Normal task surface with current owner and available action.

02 Loading

Skeleton retains layout and names what is being fetched.

03 Partial

Incomplete data is useful but clearly bounded.

04 Blocked

Reason, owner, consequence, and recovery appear together.

05 Recovery

Retry, assign, revert, or request-change path is visible.

06 Approved

Completion records the decision and leaves an audit trail.

example-webapp-primitive-map

PRIMITIVE MAP

Shell, action, table, form, sheet, workflow, AI workspace, approval, and alert share one state grammar.
  • Variant names are API, not presentation notes.
  • Blocked and permission states require a visible reason.
  • Mobile fallbacks preserve the next useful decision.
  • Accessibility contracts ship with the primitive.
AI State Use On Motion Binding State Rule
Streaming AI output, activity feed, transcript, generated draft. --into-ai-stream-chunk-interval plus --into-motion-measured chunk reveal. Readable chunks, copy while streaming, Stop available, critical controls do not move.
Generating Prompt input, artifact preview, render queue, background job tray. --into-motion-loop with --into-ai-generation-pulse-opacity. Show stage, elapsed time, next expected step, cancel/pause when safe.
Paused Long-running generation, upload, render, or tool sequence. --into-motion-quick state settle; no loop while paused. Saffron caution may mark waiting state; resume/cancel route is visible.
Refused Prompt response, export, tool execution, model-limited action. --into-motion-measured only when the refusal blocks a task. Clear refusal, reason, safe alternative, no scolding, no over-apology.
Cited Generated claim, output block, artifact, table cell. --into-motion-micro marker hover; --into-motion-measured source pane. Markers attach to claims and route to source state; broken sources are explicit.
Traced Agent activity, reasoning summary, tool call, audit log. --into-motion-quick disclosure; --into-motion-measured step insertion. Default collapsed, no hidden failed step, no private chain-of-thought exposure.
Implementation matrix for builders
Primitive Variants Required States Mobile Fallback Accessibility Contract
App shell Top nav, sidebar, rail, bottom tabs, command path Current path, collapsed, expanded, disabled route, permission-limited, offline Bottom tabs or compact menu with current path retained Landmarks, skip link, visible focus, route names, no icon-only nav without labels
Button / action Primary, secondary, quiet, icon-only, split, destructive, loading, permission-disabled Default, hover, active, focus-visible, disabled, loading, current, blocked, destructive-confirmation, request-changes Touch height at least 2.75rem; primary action moves to visible task location Accessible name, busy state, tooltip for icon-only, keyboard activation, disabled reason; follows brand/button-system.md
Command palette Global, scoped, action-only, search-only Open, empty, loading, permission-filtered, shortcut conflict, action result, failed action Full-screen command route or sheet Combobox/listbox semantics, arrow navigation, Escape close, focus restore, result count
Data table Static, selectable, sortable, expandable, editable, virtualized Loading, empty, filtered-empty, selected, focused, disabled row, partial, error, sync-delayed Stacked record rows with P1 fields visible and row actions persistent Caption, scoped headers, aria-sort when sortable, row action keyboard access, no hover-only controls
Form field Text, select, checkbox, radio, segmented, date, file, rich text, mapped import column Idle, focused, dirty, validating, error, success, disabled, read-only, permission-denied Single column with sticky save bar that never covers focused fields Visible label, helper/error association, error summary focus, instructions before input
Drawer / sheet Detail, filter, edit, approval, evidence, import mapping Open, closing, dirty, saving, saved, error, blocked, destructive pending Full-screen sheet with close, save, and destructive controls reachable Title, described-by, focus trap when modal, focus restore, Escape behavior
Timeline / pipeline / board Timeline, kanban, approval queue, workflow rail, swimlane Queued, active, blocked, delayed, completed, skipped, failed, reassigned, dragged Priority queue list or one-lane stepper with grouped completed items Ordered list semantics or accessible grid with keyboard drag/reorder alternative
AI workspace Drafting, review, approval, execution, monitoring, rollback Queued, streaming, cited, partial, low-confidence, needs-human, approved, executing, failed, reverted Evidence and approval first; transcript moves below or into a sheet Live region for stream status, source links, human approval control, no irreversible silent action
Approval gate Content approval, execution approval, second approval, client-visible approval Draft, requested, reviewed, approved, rejected, expired, executed, reverted Single decision card with evidence count, reviewer, and permitted action Decision label, reviewer, timestamp, consequence, keyboard confirmation, audit event
Toast / alert Toast, inline alert, page alert, blocking error, system banner Info, success, warning, critical, retrying, dismissed, resolved Inline alert near affected task; avoid covering primary controls Live region, action text, no color-only severity, persistent critical alerts

Dashboards And Tables Lead With Work

Dashboards summarize decisions only when the user can act. Tables are first-class operational surfaces with captions, sorting, filtering, selection, and recovery states.

example-webapp-dashboard-table

ROLL OUT / EVIDENCE

Readiness is mostly blocked by missing owners.

Needs action
Approved 18

7 since last review.

At risk 5

Owner missing or overdue.

Evidence 82%

Coverage across workstreams.

Sort: risk first Filter: open actions Rows: 3
Workstream table with row state and action readiness.
Workstream Owner Status Next Action
CRM handoff Orion Approved Schedule rollout
Data import Unassigned Needs owner Assign reviewer
Security review Avery Blocked Resolve finding

Data Tables Are Operational Work Surfaces

A data table is not a spreadsheet skin. It needs comparison, state, selection, permission, sorting, row action, expansion, pagination, and mobile record behavior defined before code.

example-webapp-data-table-spec

COMPONENT SPEC / DATA TABLE

Evidence queue with sticky header and mobile record fallback.

Sortable risk, partial evidence, selected row, permission-limited action, expansion, pagination, and stacked mobile records are part of the primitive contract.

Partial data
AnatomyCaption, toolbar, saved view, sort, selection, body rows, expansion, row action, pagination.
TokensSurface, row, line, selected, focus, state, and density values resolve to existing app tokens.
StatesLoading, empty, selected, focused, partial, error, permission, stale, sync delayed.
MobileP1 fields become record title, state, owner/date, row action, and detail sheet.
Saved view: risk first
1 selected
Evidence queue table with sortable risk and row-level recovery actions.
Select state Workstream asc Risk desc Evidence Owner Action
CRM handoff
Expansion available
Medium 4 of 6 sources attached Avery
Security review
AI summary pending citation
High 2 citations missing Orion
Import test
Permission-limited row action
Low Verified Operations
CRM handoff Medium risk Owner Avery / 4 of 6 sources
Security review High risk Owner Orion / 2 citations missing

Data Views, Timelines, And Pipelines Have Jobs

Choose the view by the operator's decision. Do not turn every dataset into a dashboard or every workflow into cards.

View Type Use When Required Controls Required States Responsive Rule
Dashboard summary The user needs a decision summary before acting. Period, source, filters, primary next action, drill-in route. Fresh, stale, partial, empty, calculation error, no permission. One conclusion and one focused metric group before secondary data.
Data table The user compares records, edits rows, or needs precise values. Search, filters, sort, view settings, selection, export, row actions. Loading, empty, filtered-empty, selected, focus, partial, error, sync-delayed. Stacked record rows when horizontal scroll hides the workflow.
Timeline The user needs sequence, duration, dependency, or milestone clarity. Time scale, current marker, owner, dependency, milestone, zoom or range. Upcoming, active, delayed, blocked, completed, skipped, date uncertain. Turn into grouped phases or a vertical step list with current item first.
Pipeline / board The user moves work through states or reviews bottlenecks. Columns, WIP count, owner, priority, bulk move, filter, conflict handling. Queued, active, blocked, dragged, dropped, invalid move, no permission, archived. Show one priority lane or queue list; avoid miniaturized full boards.
Approval queue The user decides whether work can become visible, executed, or exported. Reviewer, evidence count, risk, requested action, approve/reject/request changes. Requested, needs evidence, approved, rejected, expired, executed, reverted. Use one decision card per item with evidence and consequence visible.
Audit log The user needs accountable history or compliance evidence. Actor, timestamp, source, prior/new value, reason, filter, export. Loaded, partial retention, redacted, failed load, permission-limited. Chronological list with expandable details and source link.

Form Fields Carry Instruction, Validation, And Recovery

The form primitive defines labels, helper text, validation, dirty state, permission copy, conflict recovery, and mobile save behavior before a reusable field component is built.

example-webapp-form-field-spec

COMPONENT SPEC / FORM FIELD

Import mapping form with validation and permission state.

Each field exposes label, helper, error, dirty, validation, save, conflict, and read-only behavior as visible system states.

2 errors
Resolve two fields before import. Owner role is required. The evidence source URL is not accessible to this workspace.
Approver is required for client-visible imports. Choose an owner role before saving.
Saved. Value was normalized from the uploaded CSV.
This source is permission-limited. Request access or mark the row internal.
Import behavior Checkbox labels own the click target and state text is not color-only.

Forms, States, Drawers, And Modals

Forms are decision tools. Every field needs a label, helper or error state when needed, save/cancel behavior, and keyboard recovery.

example-webapp-specimen-governance

SPECIMEN GOVERNANCE

New examples must prove behavior. Add a specimen only when it demonstrates workflow, state, responsive behavior, accessibility, or recovery that the current examples do not already prove.
Lead specimen first. Improve the dominant product scene before adding supporting cards, variants, or decorative examples.
Visual proof required. Render desktop and 390px mobile, run critique plus heuristic audit, record the report, and implement top findings before closeout.
example-webapp-form-panel

FORM PANEL

Approval detail

Avery
Missing security evidence.

Add evidence or mark as accepted risk.

example-webapp-state-ladder

STATE LADDER

LoadingStatic skeleton, no shimmer
EmptyCause plus next action
ErrorFailure plus recovery path
SuccessQuiet confirmation
PermissionRole and route explained
example-webapp-permission-error-recovery

PERMISSION / ERROR / PARTIAL DATA

Client export is blocked until evidence and reviewer access are resolved.

Show the cause, affected records, permitted actions, and recovery route without hiding the primary decision.

Blocked 2 fixes required

NEXT USEFUL DECISION

Assign an approver or keep the packet internal.

Permission denied You need Approver access for client-visible exports. Avery is the current owner.
Partial evidence 4 of 6 source links are verified. The security review and pricing note are missing citations.
Safe fallback Internal PDF export remains available. External link creation stays disabled.
Last successful export13 May 2026, 16:20 Affected recordsSecurity review, pricing note Recovery routeRequest approval, attach evidence, retry export

AI Workspaces Separate Input, Evidence, And Action

AI surfaces use INTO restraint. The interface exposes evidence and approval gates instead of decorative AI styling.

For prompt input, streaming text, citations, agent trace, tool call display, model awareness, confidence, disclosure, refusal, feedback, and attachment/artifact behavior, route to brand/ai-interface-patterns.md before composing the workspace. This section proves the workspace zones; the pattern library owns each AI-native control and state.

example-webapp-ai-workspace

AI WORKSPACE / REVIEW

Agent proposes a route change.

Evidence 3/3 Human approval required
User input

Identify stale routing for platform screens and explain what should become canonical.

Agent proposal

Route future SaaS, admin, dashboard, and AI workspace work to the web-app system before legacy app drafts.

example-webapp-ai-diff

PROPOSED CHANGE

BeforeLegacy app drafts compete with canonical guidance.
AfterCanonical route starts at web-app system, then source docs, then template.

AI Workspace Shells Keep Evidence And Approval Beside The Work

The AI workspace shell owns zones, hierarchy, responsive behavior, and governance. Detailed AI-native controls still route to brand/ai-interface-patterns.md.

example-webapp-ai-workspace-shell-spec

COMPONENT SPEC / AI WORKSPACE SHELL

Review shell with transcript, evidence, approval, and rollback zones.

Mobile promotes the next safe decision and evidence before long transcript history; desktop can show all regions together.

Needs human

CURRENT PATH

Client Readiness / Export decision
Agent waiting for approval
User input

Prepare the client packet, but hold export if evidence is incomplete.

Agent proposal

Approve internal preview only. Two citations are missing, so external export should remain blocked.

Collaboration, Review, And Shared Work

Shared work should make ownership, comments, approvals, evidence, permissions, conflicts, notifications, and client visibility explicit only where they change the task.

example-webapp-presence-ownership

PRESENCE / OWNERSHIP

Presence Shows Responsibility, Not Social Activity

Avery editing scope Orion reviewing evidence Owner missing

Show collaborators when their activity changes lock, review, edit, or approval behavior. Avoid avatar piles, decorative online dots, and badge noise.

example-webapp-comment-thread

COMMENTS

Anchored Thread

Anchor Table row / Data import

Need a source for the 61% evidence coverage before client view is enabled.

Resolve Reopen

Comments attach to records, fields, rows, chart points, or evidence. Free-floating comments fail the system.

example-webapp-approval-record

APPROVAL

Approval Record

Reviewer Avery Time 14 May 2026, 15:40 Evidence 3 sources cited Permits Client-visible export

Separate comment approval from execution approval. Approval states must say what action is now allowed.

example-webapp-conflict-resolution

CONFLICT

Resolve With Evidence

Prior Owner: Avery Your edit Owner: Orion Latest Owner: Finance lead

Conflicts show prior, attempted, and latest values plus recovery path. AI must not silently overwrite human work.

example-webapp-sharing-permissions

SHARING

Visibility Is A State

Internal Private Restricted Client-visible External link

Client-visible and external-link states need explicit labels before export, send, or agent execution.

Reference AI Product Screens

These example screens are implementation contracts, not moodboards. They prove that the component system can support planning, content operations, and video generation without inventing new interaction logic.

example-project-manager-ai-screen

PROJECT MANAGER AI

Workstream Command Center

The screen combines project sidebar, command path, timeline, task table, blocker queue, agent proposal, evidence panel, and approval gate.

Core components App shell, table, timeline, board, approval queue, agent activity feed, detail drawer, audit log States Draft, active, blocked, needs human, approved, overdue, sync delayed, conflict, archived Mobile Today / Needs Review queue with owner, due date, evidence, approve, and request-change actions QA proof Human assigns work, reviews AI suggestion, approves execution, and audits the change without losing context
example-social-media-ai-suite-screen

SOCIAL MEDIA AI SUITE

Campaign Content Operations

Pipeline view moves content from brief to AI draft, brand review, schedule, publish, and performance review with channel previews attached.

Preview Caption, media, sources, brand checks Review Approval, comments, version history Publish Schedule, failure recovery, client-visible state

Mobile shows approval inbox and scheduled-post preview rather than a squeezed calendar grid.

example-video-generation-pipeline-screen

VIDEO GENERATION PIPELINE

Render Pipeline And Review Room

A dark media stage supports prompt, source, generation, render, review, approval, export, version comparison, and render-error recovery.

Source missing Queued Rendering Needs review Export failed

Mobile keeps render status plus approve, reject, and request-change decision controls visible.

  • Each example must include desktop and 390px mobile behavior, not only a desktop composition.
  • Each example must show one next useful decision and at least one failure or recovery state.
  • Each example must use component contracts from this document and the full source spec, not local styling inventions.

React, Tailwind, And Shadcn-Style Implementation

The implementation bias is open, copied, token-first component ownership: use mature primitives for anatomy and accessibility, then restyle through INTO tokens, type, radius, density, and state rules.

example-webapp-implementation-handoff

IMPLEMENTATION CONTRACT

Copy the primitive. Own the system.

Component anatomy comes from mature primitives; every visible decision comes from INTO tokens, state grammar, and governance rules.

01 Radix / shadcn anatomy

Dialog, sheet, tabs, command, toast, tooltip, select, and table behavior stay accessible by default.

02 INTO Tailwind theme

CSS variables feed semantic utilities. No raw color, arbitrary spacing, or custom root font-size.

03 CVA variants

Variants encode tone, size, density, loading, current, blocked, permission, and destructive intent.

04 State QA

Keyboard, focus-visible, reduced motion, mobile, partial data, and recovery are acceptance criteria.

variant="primary" tone="petrol" state="blocked" density="compact" maps to INTO tokens, not local screen CSS.
shadcn/ui

Use copied React/TypeScript components, Radix-style primitives, CSS-variable theming, and Lucide icon defaults as anatomy. Do not copy the default visual identity.

Tailwind CSS

Expose INTO variables through Tailwind theme utilities or @theme inline. Component classes reference semantic --into-* variables instead of raw values.

CVA variants

Build reusable variants for variant, size, density, tone, state, isLoading, isCurrent, permissionReason, and destructiveLevel.

Lucide icons

Use familiar command icons with currentColor, accessible names, tooltips for icon-only controls, and no decorative badge fields.

Motion

Use Motion/Framer Motion for mounted surfaces, layout changes, and workflow transitions only when motion clarifies state. Provide reduced-motion behavior that removes transform-heavy travel.

Production acceptance

Every component renders light/dark, keyboard, focus-visible, loading, disabled, error, success, partial-data, permission, conflict, and reduced-motion states where relevant.

Design QA Checklist

Gate Pass Condition
Routing Builder read ai/START_HERE.md, this hybrid context, media/web-apps.md, brand/ai-software-platform-system.md, and templates/web-app/style-system.md.
Tokens No raw colors, arbitrary spacing, custom root font-size, negative tracking, or non-tokenized shadows where a token exists.
Components Variants and states are encoded in component props/CVA rather than one-off screen classes.
AI governance AI actions show source/context, proposed change, approval, confidence/caveat when useful, audit, and rollback where needed.
Accessibility Keyboard path, focus-visible, labels, error summary, live regions, touch target, contrast, and 200% zoom are verified.
Responsive Desktop, tablet, and 390px mobile show no squeezed full boards, hidden critical state, cropped buttons, overlap, or sticky-control obstruction.
Motion Animations have a communication job, duration/ease token, cleanup, reduced-motion path, and static final state.
Brand defects No decorative badge walls, nested cards, generic SaaS chrome, purple-blue AI styling, stock imagery, or wrong favicon source.

Reference Applications Must Be Buildable

The three reference applications are not moodboards. Each one needs enough primitives, states, responsive behavior, and QA proof for a coding AI to implement without guessing.

Reference App Required Screens / Regions Required States Must Prove Before Final
Collaborative workshop / agent operations room Agenda, prompt, participant input, poll/vote, evidence panel, owner assignment, timer, AI proposal, approval gate, export state. Live, paused, empty participant input, submitted, partial evidence, permission blocked, AI streaming, approval requested, approved, export held. Facilitator can move from prompt to evidence-backed decision to approval/export without losing keyboard access or mobile task priority.
Timesheet approval surface Weekly grid, person/project rows, exceptions, totals, missing-note recovery, approval queue, export/report, audit trail. Draft, submitted, exception, missing note, approved, rejected, locked, partial export, sync delayed, permission denied. Reviewer can identify the exception, request correction, approve valid rows, and export with clear totals on desktop and mobile.
Polling / route-confidence app Question, options, live results, response count, abstentions, evidence link, close state, result explanation, reduced-motion result view. Not started, live, user voted, abstained, closed, tied, low confidence, evidence missing, result published, permission blocked. Participant can vote or abstain; operator can close the poll, explain the result, and publish only when evidence and permissions pass.
  • Each reference app needs a desktop specimen, 390px mobile specimen, state inventory, keyboard path, and failure/recovery path.
  • Final examples must show real data and one next useful decision, not placeholders or generic dashboards.
  • If a reference app cannot satisfy this table, repair the system or app spec before building screens.

Responsive Behavior Is A Component Contract

Breakpoints, touch floors, gestures, data-collapse decisions, shell transitions, and density reflow are specified before screen implementation so mobile preserves the work instead of shrinking it.

example-webapp-responsive-playbook

RESPONSIVE PLAYBOOK

Mobile keeps read, approve, and light edit.

Desktop comparison becomes tablet drawers and mobile stacked records. Gesture shortcuts always have visible controls and keyboard alternatives.

390px checked
MobileBelow 768px. One column, bottom tabs/menu, stacked records, full-screen sheets.
Tablet768-1023px. Main work stays visible; inspectors and evidence become drawers.
Desktop1024-1279px. Full shell, command, main work, and one support region.
Wide1280px and above. Widen exhibits before prose; add support only when useful.
Priority Desktop Tablet Mobile
P1 identity Visible column Visible column Record title
P1 risk/state Visible column Visible column Status line near title
P1 action Row action Row action menu Record footer action
P2 evidence Column or expansion Evidence drawer Detail sheet
Gesture and fallback policy for production web-app screens.
Gesture Allowed Use Required Fallback
Tap Primary activation, row expansion, tab switch. Keyboard Enter/Space and visible focus.
Swipe Non-destructive archive or dismiss where the app teaches it. Explicit action button and undo when reversible.
Drag/drop Ordering or board movement when movement clarifies state. Keyboard move control or action menu alternative.

Mobile Keeps Read, Approve, And Light Edit

The mobile interface is not a squeezed dashboard. It preserves the operator's primary task and moves dense tables into stacked record summaries.

example-webapp-mobile-responsive
Client Readiness 61%

TODAY / NEEDS REVIEW

Data import cannot go client-visible.

Owner Missing Evidence 61% Risk Export blocked
Latest note

Assign an owner before the client packet is generated.

Home Tasks AI Menu
example-webapp-mobile-flow

RESPONSIVE TASK MAP

SidebarBottom tabs or compact menu with the current path retained.
TablePriority fields become stacked record summaries with row actions.
DrawerFull-screen sheet with clear close, save, and destructive states.
ChartTakeaway first, then one focused metric or trend.

MOBILE REVIEW RULE

Below 768px, mobile preserves the next useful decision. Touch targets stay at least 44px, sticky save bars must not cover fields, and dense data turns into ranked records rather than horizontal squeeze.

GSAP And PixiJS Are Capabilities, Not Decoration

Use GSAP for precise interface sequencing and PixiJS for simple 2D canvas renderings only when static HTML, CSS, or SVG would make the interaction less clear or less performant.

example-webapp-gsap-capability

GSAP / INTERACTION

Sequence State, Not Ornament

Input Review Approve

Allowed for drawer transitions, workflow step changes, evidence reveal, AI stream settling, chart callouts, command palette entrance, and drag/drop feedback.

gsap.matchMedia().add({
  reduceMotion: "(prefers-reduced-motion: reduce)"
}, ({ conditions }) => {
  return conditions.reduceMotion
    ? gsap.set(node, { autoAlpha: 1 })
    : gsap.to(node, { autoAlpha: 1, y: 0 });
});
example-webapp-pixijs-capability

PIXIJS / SIMPLE RENDERING

Canvas For Dense 2D Explanations

Allowed for lightweight node maps, dense 2D timelines, spatial queues, mini simulations, and canvas-heavy status views with static fallback.

const app = new Application();
await app.init({ resizeTo: container, backgroundAlpha: 0 });
container.appendChild(app.canvas);
app.ticker.add((ticker) => update(ticker.deltaTime));

Operational UX Is Part Of Styling

Core product surfaces must define lifecycle, permissions, audit trail, command palette, bulk actions, inline editing, sync, import/export, version history, null data, and destructive actions.

example-webapp-record-lifecycle

RECORD LIFECYCLE

Draft Review Approved Archived

Each state defines allowed actions, owner, audit event, recovery path, and mobile behavior.

example-webapp-command-palette

COMMAND PALETTE

Run action Assign reviewer Export evidence packet Open audit trail

Commands expose scope, permission, confirmation level, shortcut, and recovery state.

example-webapp-error-severity

ERROR SEVERITY

  • Field error: inline message.
  • Inline warning: affected element.
  • Blocking error: recovery path.

Errors name what failed, what changed, and what the operator can do next.

example-webapp-sync-states

SYNC STATES

Connected Last sync 09:42 Delayed 12 records waiting Expired Reconnect required

Stale or partial data must say affected records and last successful sync.

Keyboard, Semantics, And Recovery Are Mandatory

Dense operator tools need explicit keyboard models, screen-reader semantics, validation recovery, and null-data rules before they are implementation-ready.

Surface Requirement Failure To Avoid
Table Caption, scoped headers, sortable state, row focus, keyboard row actions. Hover-only actions or color-only state.
Form Label, error summary focus, inline error, dirty/save state. Placeholder as label or hidden validation.
Dialog Title, description, focus trap, focus restore, escape behavior. Modal used for primary browsing.
Canvas Static fallback, accessible summary, keyboard equivalent controls. PixiJS as the only source of data meaning.

Component-Specific Accessibility Checklist

Component Keyboard / Focus Screen Reader / Semantics State / Recovery
App shell Skip link, landmark order, current route, labelled collapsed nav. Navigation names, current state, no icon-only primary route. Offline and permission states keep safe routes visible.
Data table Row selection, row action, expansion, and pagination reachable without hover. Caption, scoped headers, aria-sort, selection count, partial-data copy. Loading, empty, filtered-empty, error, permission, and sync-delayed states.
Form field Error summary receives focus; save/cancel follows field order. Visible label, helper/error association, required text, native input first. Dirty, validating, conflict, disabled reason, and read-only reason visible.
AI workspace shell Approval controls precede irreversible execution and remain reachable on mobile. Restrained live status, cited source links, model/tool metadata in text. Needs-human, failed, reverted, and rollback states are explicit.
Modal / drawer / sheet Focus trap when modal, focus restore, Escape behavior, close visible. Dialog title, description, affected object, inert background. Dirty, saving, destructive consequence, permission, and blocked states.
Toast / alert Dismiss/retry actions keyboard reachable without covering primary work. Live region and severity in text. Critical alerts persist; severity is not color-only.

Contrast Verification

Pair Warm Light Blueprint Dark Result
Primary text on page 16.67:1 15.83:1 AA pass
Secondary text on page 13.01:1 11.60:1 AA pass
Muted text on page 7.14:1 7.10:1 AA pass
Primary text on panel 15.43:1 14.66:1 AA pass
Inverse text on accent action 9.44:1 7.57:1 AA pass
Warning, positive, and critical state pairs 5.02:1 to 11.14:1 6.71:1 to 11.78:1 AA pass

Rules For AI Implementers

Agents must route here before using legacy app drafts or external component references.

Load order Read this context, `media/web-apps.md`, `templates/web-app/style-system.md`, button, data visualization, diagram, icon, and token systems before implementation. If the surface is a presenter-led workshop, route to `media/interactive-workshops.md` and `templates/interactive-workshop/style-system.md`.
External libraries shadcn/ui, GSAP, PixiJS, Radix, TanStack, and Recharts can inform anatomy or capability. They do not override INTO typography, color, containment, accessibility, or state rules.
Required states Tables, forms, AI workspaces, drawers, modals, data panels, and canvas views require keyboard, focus-visible, loading, empty, error, success, partial-data, permission, conflict, sync-delayed, reduced-motion, and static fallback states when relevant.
Collaboration Shared work requires anchored comments, owner and reviewer states, conflict recovery, notification discipline, explicit sharing visibility, and AI overwrite safeguards.