feat: complete UI/UX overhaul with Impeccable design system
Replace Inter/Baskerville with self-hosted Manrope/Alegreya/JetBrains Mono variable fonts. Migrate all colors from hex to OKLCH tokens (30+ CSS custom properties) with full dark/light mode support. Replace Unicode emoji with lucide-react SVG icons throughout. Convert all page layouts to inline styles (Tailwind CSS 4 flex/grid classes unreliable in this project). Code-split routes via React.lazy (760KB → 15KB initial shell + 10 lazy chunks). Add global styles: scrollbar theming, selection color, input/button bases, :focus-visible ring, prefers-reduced-motion. Setup wizard gets 4-phase indicator with numbered circles, PathInput and StatusDot components. Toast container gets aria-live="polite". Tab close buttons changed to proper <button> elements with aria-labels. All 8 pages (Dashboard, Editor, Build, Server, Toolset, Repos, Settings, Setup) rewritten with consistent card/section/button patterns.
This commit is contained in:
@@ -9,16 +9,42 @@ export default {
|
||||
forge: {
|
||||
bg: "var(--forge-bg)",
|
||||
surface: "var(--forge-surface)",
|
||||
"surface-raised": "var(--forge-surface-raised)",
|
||||
border: "var(--forge-border)",
|
||||
accent: "var(--forge-accent)",
|
||||
"accent-hover": "var(--forge-accent-hover)",
|
||||
"accent-subtle": "var(--forge-accent-subtle)",
|
||||
"accent-text": "var(--forge-accent-text)",
|
||||
text: "var(--forge-text)",
|
||||
"text-secondary": "var(--forge-text-secondary)",
|
||||
success: "var(--forge-success)",
|
||||
"success-bg": "var(--forge-success-bg)",
|
||||
"success-border": "var(--forge-success-border)",
|
||||
danger: "var(--forge-danger)",
|
||||
"danger-bg": "var(--forge-danger-bg)",
|
||||
"danger-border": "var(--forge-danger-border)",
|
||||
"danger-strong": "var(--forge-danger-strong)",
|
||||
warning: "var(--forge-warning)",
|
||||
"warning-bg": "var(--forge-warning-bg)",
|
||||
"warning-border": "var(--forge-warning-border)",
|
||||
info: "var(--forge-info)",
|
||||
"info-bg": "var(--forge-info-bg)",
|
||||
"log-bg": "var(--forge-log-bg)",
|
||||
"log-text": "var(--forge-log-text)",
|
||||
},
|
||||
},
|
||||
fontFamily: {
|
||||
sans: ["Inter", "system-ui", "sans-serif"],
|
||||
mono: ["JetBrains Mono", "Fira Code", "monospace"],
|
||||
serif: ["Baskerville", "Georgia", "Palatino", "serif"],
|
||||
sans: ["Manrope Variable", "system-ui", "sans-serif"],
|
||||
heading: ["Alegreya Variable", "Georgia", "serif"],
|
||||
mono: ["JetBrains Mono Variable", "Fira Code", "monospace"],
|
||||
},
|
||||
fontSize: {
|
||||
xs: "var(--text-xs)",
|
||||
sm: "var(--text-sm)",
|
||||
base: "var(--text-base)",
|
||||
lg: "var(--text-lg)",
|
||||
xl: "var(--text-xl)",
|
||||
"2xl": "var(--text-2xl)",
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user