Skip to content

Commit f3b3122

Browse files
authored
feat: complete Phase 4 UI Components planning and issue creation (#73)
feat: phase 4 UI components planning and design tokens (#73) ## Phase 4 Documentation - Created comprehensive issue templates for all 19 UI components - Documented implementation timeline and dependencies - Added issue tracking with actual GitHub issue numbers - Updated TODO.md with issue links ## Design Tokens Implementation (#57) - Added comprehensive design token system to app/globals.css - Created TypeScript interface for type-safe token access - Documented all tokens with usage examples - Implemented spacing scale, typography, breakpoints, and utilities This PR establishes the foundation for Phase 4 UI component development with proper planning documentation and a robust design token system.
1 parent 90dca79 commit f3b3122

File tree

8 files changed

+2005
-20
lines changed

8 files changed

+2005
-20
lines changed

app/globals.css

Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,62 @@
44
@custom-variant dark (&:is(.dark *));
55

66
@theme inline {
7+
/* Spacing Scale */
8+
--spacing-0: 0;
9+
--spacing-1: 0.25rem; /* 4px */
10+
--spacing-2: 0.5rem; /* 8px */
11+
--spacing-3: 0.75rem; /* 12px */
12+
--spacing-4: 1rem; /* 16px */
13+
--spacing-5: 1.25rem; /* 20px */
14+
--spacing-6: 1.5rem; /* 24px */
15+
--spacing-8: 2rem; /* 32px */
16+
--spacing-10: 2.5rem; /* 40px */
17+
--spacing-12: 3rem; /* 48px */
18+
--spacing-16: 4rem; /* 64px */
19+
--spacing-20: 5rem; /* 80px */
20+
--spacing-24: 6rem; /* 96px */
21+
22+
/* Typography Scale */
23+
--font-size-xs: 0.75rem; /* 12px */
24+
--font-size-sm: 0.875rem; /* 14px */
25+
--font-size-base: 1rem; /* 16px */
26+
--font-size-lg: 1.125rem; /* 18px */
27+
--font-size-xl: 1.25rem; /* 20px */
28+
--font-size-2xl: 1.5rem; /* 24px */
29+
--font-size-3xl: 1.875rem; /* 30px */
30+
--font-size-4xl: 2.25rem; /* 36px */
31+
--font-size-5xl: 3rem; /* 48px */
32+
--font-size-6xl: 3.75rem; /* 60px */
33+
34+
/* Line Heights */
35+
--leading-none: 1;
36+
--leading-tight: 1.25;
37+
--leading-snug: 1.375;
38+
--leading-normal: 1.5;
39+
--leading-relaxed: 1.625;
40+
--leading-loose: 2;
41+
42+
/* Font Weights */
43+
--font-weight-normal: 400;
44+
--font-weight-medium: 500;
45+
--font-weight-semibold: 600;
46+
--font-weight-bold: 700;
47+
48+
/* Breakpoints */
49+
--breakpoint-sm: 640px;
50+
--breakpoint-md: 768px;
51+
--breakpoint-lg: 1024px;
52+
--breakpoint-xl: 1280px;
53+
--breakpoint-2xl: 1536px;
54+
55+
/* Container Max Widths */
56+
--container-sm: 640px;
57+
--container-md: 768px;
58+
--container-lg: 1024px;
59+
--container-xl: 1280px;
60+
--container-2xl: 1536px;
61+
62+
/* Colors */
763
--color-background: var(--background);
864
--color-foreground: var(--foreground);
965
--font-sans: var(--font-geist-sans);
@@ -37,10 +93,32 @@
3793
--color-popover: var(--popover);
3894
--color-card-foreground: var(--card-foreground);
3995
--color-card: var(--card);
96+
97+
/* Border Radius */
4098
--radius-sm: calc(var(--radius) - 4px);
4199
--radius-md: calc(var(--radius) - 2px);
42100
--radius-lg: var(--radius);
43101
--radius-xl: calc(var(--radius) + 4px);
102+
103+
/* Shadows */
104+
--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
105+
--shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
106+
--shadow-lg:
107+
0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
108+
--shadow-xl:
109+
0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
110+
111+
/* Animation Durations */
112+
--duration-fast: 150ms;
113+
--duration-normal: 300ms;
114+
--duration-slow: 500ms;
115+
116+
/* Z-Index Scale */
117+
--z-index-10: 10;
118+
--z-index-20: 20;
119+
--z-index-30: 30;
120+
--z-index-40: 40;
121+
--z-index-50: 50;
44122
}
45123

46124
:root {

0 commit comments

Comments
 (0)