Files
moteva/refer/design/home/DESIGN.md
T
root 44406b72db Initial commit: img-infinite-canvas AI design workbench MVP
Moteva-style AI design workbench replica. Home prompt creates a project;
the project page provides an infinite canvas with node drag, zoom/pan,
a design chat panel, history replay, image asset upload, and project
save/regenerate.

- Backend: go-zero, DDD layering, sqlc/pgx, optional PostgreSQL; memory
  or Redis cache; asynq job queue; MinIO/S3/R2/OSS object storage;
  sky-valley/pi agent runtime adapter.
- Frontend: Next.js App Router + Vite artifact build, TypeScript, i18n,
  shadcn/ui components, auth (OTP/Turnstile/Google/WeChat).
- Deploy: Docker Compose and k3s manifests.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-07 23:15:37 +08:00

163 lines
6.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
name: Moteva
colors:
surface: '#fcf8fa'
surface-dim: '#dcd9db'
surface-bright: '#fcf8fa'
surface-container-lowest: '#ffffff'
surface-container-low: '#f6f3f5'
surface-container: '#f0edef'
surface-container-high: '#eae7e9'
surface-container-highest: '#e4e2e4'
on-surface: '#1b1b1d'
on-surface-variant: '#45464d'
inverse-surface: '#303032'
inverse-on-surface: '#f3f0f2'
outline: '#76777d'
outline-variant: '#c6c6cd'
surface-tint: '#565e74'
primary: '#000000'
on-primary: '#ffffff'
primary-container: '#131b2e'
on-primary-container: '#7c839b'
inverse-primary: '#bec6e0'
secondary: '#0058be'
on-secondary: '#ffffff'
secondary-container: '#2170e4'
on-secondary-container: '#fefcff'
tertiary: '#000000'
on-tertiary: '#ffffff'
tertiary-container: '#271901'
on-tertiary-container: '#98805d'
error: '#ba1a1a'
on-error: '#ffffff'
error-container: '#ffdad6'
on-error-container: '#93000a'
primary-fixed: '#dae2fd'
primary-fixed-dim: '#bec6e0'
on-primary-fixed: '#131b2e'
on-primary-fixed-variant: '#3f465c'
secondary-fixed: '#d8e2ff'
secondary-fixed-dim: '#adc6ff'
on-secondary-fixed: '#001a42'
on-secondary-fixed-variant: '#004395'
tertiary-fixed: '#fcdeb5'
tertiary-fixed-dim: '#dec29a'
on-tertiary-fixed: '#271901'
on-tertiary-fixed-variant: '#574425'
background: '#fcf8fa'
on-background: '#1b1b1d'
surface-variant: '#e4e2e4'
typography:
display-lg:
fontFamily: Inter
fontSize: 32px
fontWeight: '700'
lineHeight: 40px
letterSpacing: -0.02em
headline-md:
fontFamily: Inter
fontSize: 24px
fontWeight: '600'
lineHeight: 32px
letterSpacing: -0.01em
title-sm:
fontFamily: Inter
fontSize: 18px
fontWeight: '600'
lineHeight: 24px
body-md:
fontFamily: Inter
fontSize: 16px
fontWeight: '400'
lineHeight: 24px
body-sm:
fontFamily: Inter
fontSize: 14px
fontWeight: '400'
lineHeight: 20px
label-caps:
fontFamily: Inter
fontSize: 12px
fontWeight: '600'
lineHeight: 16px
letterSpacing: 0.05em
label-xs:
fontFamily: Inter
fontSize: 11px
fontWeight: '500'
lineHeight: 14px
display-lg-mobile:
fontFamily: Inter
fontSize: 28px
fontWeight: '700'
lineHeight: 36px
rounded:
sm: 0.25rem
DEFAULT: 0.5rem
md: 0.75rem
lg: 1rem
xl: 1.5rem
full: 9999px
spacing:
unit: 4px
xs: 4px
sm: 8px
md: 16px
lg: 24px
xl: 40px
sidebar_width: 280px
toolbar_height: 56px
---
## Brand & Style
The design system is engineered for high-velocity creative workflows, targeting E-commerce and UI designers who require a tool that recedes into the background while maintaining a premium, authoritative presence.
The aesthetic is **Corporate / Modern** with a focus on **Minimalism**. It prioritizes extreme clarity, reducing visual noise to ensure the users content remains the focal point. The interface utilizes a "Canvas and Chrome" philosophy: the workspace is expansive and neutral, while the surrounding "Chrome" (panels, toolbars, and inspectors) is structured with surgical precision. The emotional response is one of calm control, reliability, and professional-grade efficiency.
## Colors
The palette is anchored by **Deep Navy (#0F172A)** for primary branding and high-level structural elements, providing a grounded, professional foundation. **Electric Blue (#3B82F6)** serves as the functional action color, reserved for primary buttons, active states, and selection highlights to drive focus.
The background strategy employs **Off-white (#F8FAFC)** for the main application canvas to reduce eye strain, while **Pure White (#FFFFFF)** is used for floating panels, cards, and inspector menus to create a clear layered hierarchy. Borders and dividers utilize **Soft Grays (#E2E8F0)** to define space without creating harsh visual breaks.
## Typography
This design system utilizes **Inter** exclusively to leverage its exceptional legibility and systematic optical sizing. The hierarchy is highly structured to facilitate rapid scanning of dense information.
- **Headlines:** Use tighter letter spacing and heavier weights to establish clear section anchors.
- **Labels:** Small-scale labels (11px-12px) are essential for tool property inspectors; use uppercase for category headers to create distinction without increasing size.
- **Body:** Standardized at 14px for utility-heavy areas to maximize information density while maintaining readability.
## Layout & Spacing
The layout follows a **Fixed-Fluid Hybrid** model. Sidebars (Layers and Properties) are fixed at 280px to provide a consistent control surface, while the central viewport (the Canvas) is fluid.
A **4px baseline grid** governs all spatial relationships. High-productivity areas (like property inspectors) should use compact spacing (`sm` / 8px), while marketing or dashboard views should use more generous breathing room (`lg` / 24px). Breakpoints are set at 768px (Tablet) and 1280px (Desktop), with mobile views collapsing sidebars into bottom sheets or hidden drawers.
## Elevation & Depth
Hierarchy is established through **Tonal Layering** and **Ambient Shadows**.
1. **Level 0 (Canvas):** The base layer using the Off-white background.
2. **Level 1 (Sidebars/Panels):** Pure white surfaces with a 1px subtle border (#E2E8F0) to separate them from the canvas.
3. **Level 2 (Popovers/Menus):** Elements that float above the UI use a soft, diffused shadow (0px 4px 12px rgba(15, 23, 42, 0.08)) to indicate interactivity and temporary state.
4. **Active State:** Selection boxes and focused inputs use a 2px Electric Blue stroke, omitting shadows to maintain a "flat" technical feel.
## Shapes
The shape language balances modern approachability with professional precision. A **Rounded (0.5rem / 8px)** corner radius is the standard for cards, buttons, and input fields.
- Use **Sharp (0px)** for main structural dividers or the edge of the screen panels.
- Use **Large (1rem / 16px)** for main dashboard cards or onboarding modals.
- Interactive icons and status chips may use **Pill-shaped** geometry to differentiate them from functional input fields.
## Components
- **Buttons:** Primary buttons use Electric Blue with white text. Secondary buttons use a white fill with a 1px border (#E2E8F0) and Deep Navy text.
- **Input Fields:** Use 14px typography. The default state has a subtle border; the active/focus state uses an Electric Blue ring.
- **Cards:** White background, 8px corner radius, and a very light 1px border. Shadows are only applied if the card is "draggable" or "floating."
- **Chips:** Used for tags or status indicators. Use low-saturation backgrounds (e.g., light blue or light gray) with high-contrast text.
- **Layers List:** High-density list items (32px height) with subtle hover states (#F1F5F9). Active layers use a light blue tint.
- **Segmented Controls:** Used for switching between tools; use a light gray container with a white "slider" for the active selection.