@formant/aesthetics 0.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json ADDED
@@ -0,0 +1,77 @@
1
+ {
2
+ "name": "@formant/aesthetics",
3
+ "version": "0.0.0",
4
+ "type": "module",
5
+ "description": "Formant design system — themed React components built on shadcn/ui, Radix, and Tailwind CSS v4",
6
+ "license": "MIT",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "https://github.com/FormantIO/aesthetics.git"
10
+ },
11
+ "homepage": "https://github.com/FormantIO/aesthetics#readme",
12
+ "keywords": [
13
+ "formant",
14
+ "design-system",
15
+ "react",
16
+ "components",
17
+ "shadcn",
18
+ "tailwindcss",
19
+ "radix-ui"
20
+ ],
21
+ "sideEffects": false,
22
+ "main": "./dist/index.js",
23
+ "module": "./dist/index.js",
24
+ "types": "./dist/index.d.ts",
25
+ "exports": {
26
+ ".": {
27
+ "import": "./dist/index.js",
28
+ "types": "./dist/index.d.ts"
29
+ },
30
+ "./styles": "./styles/globals.css"
31
+ },
32
+ "files": [
33
+ "dist",
34
+ "styles"
35
+ ],
36
+ "scripts": {
37
+ "build": "tsup",
38
+ "dev": "tsup --watch",
39
+ "typecheck": "tsc --noEmit",
40
+ "prepublishOnly": "npm run build"
41
+ },
42
+ "dependencies": {
43
+ "class-variance-authority": "^0.7.1",
44
+ "clsx": "^2.1.1",
45
+ "cmdk": "^1.1.1",
46
+ "date-fns": "^4.1.0",
47
+ "embla-carousel-react": "^8.6.0",
48
+ "input-otp": "^1.4.2",
49
+ "lucide-react": "^0.487.0",
50
+ "next-themes": "^0.4.6",
51
+ "radix-ui": "^1.4.3",
52
+ "react-day-picker": "^9.14.0",
53
+ "react-resizable-panels": "^4.10.0",
54
+ "recharts": "^3.8.0",
55
+ "sonner": "^2.0.7",
56
+ "tailwind-merge": "^3.5.0",
57
+ "vaul": "^1.1.2"
58
+ },
59
+ "devDependencies": {
60
+ "@types/node": "^25.5.0",
61
+ "@types/react": "^19.2.14",
62
+ "@types/react-dom": "^19.2.3",
63
+ "tailwindcss": "^4.2.1",
64
+ "tsup": "^8.5.1",
65
+ "typescript": "^5.9.3"
66
+ },
67
+ "peerDependencies": {
68
+ "react": "^19.0.0",
69
+ "react-dom": "^19.0.0",
70
+ "tailwindcss": "^4.0.0"
71
+ },
72
+ "peerDependenciesMeta": {
73
+ "tailwindcss": {
74
+ "optional": true
75
+ }
76
+ }
77
+ }
@@ -0,0 +1,224 @@
1
+ @import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Space+Grotesk:wght@300;400;500;600;700&family=JetBrains+Mono:wght@300;400;500&display=swap');
2
+ @import "tailwindcss";
3
+ @import "tw-animate-css";
4
+ @import "shadcn/tailwind.css";
5
+
6
+ @custom-variant dark (&:is(.dark *));
7
+
8
+ @theme inline {
9
+ --font-heading: 'Space Grotesk', sans-serif;
10
+ --font-sans: 'Inter', sans-serif;
11
+ --font-mono: 'JetBrains Mono', monospace;
12
+ --color-sidebar-ring: var(--sidebar-ring);
13
+ --color-sidebar-border: var(--sidebar-border);
14
+ --color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
15
+ --color-sidebar-accent: var(--sidebar-accent);
16
+ --color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
17
+ --color-sidebar-primary: var(--sidebar-primary);
18
+ --color-sidebar-foreground: var(--sidebar-foreground);
19
+ --color-sidebar: var(--sidebar);
20
+ --color-chart-5: var(--chart-5);
21
+ --color-chart-4: var(--chart-4);
22
+ --color-chart-3: var(--chart-3);
23
+ --color-chart-2: var(--chart-2);
24
+ --color-chart-1: var(--chart-1);
25
+ --color-ring: var(--ring);
26
+ --color-input: var(--input);
27
+ --color-border: var(--border);
28
+ --color-destructive: var(--destructive);
29
+ --color-accent-foreground: var(--accent-foreground);
30
+ --color-accent: var(--accent);
31
+ --color-muted-foreground: var(--muted-foreground);
32
+ --color-muted: var(--muted);
33
+ --color-secondary-foreground: var(--secondary-foreground);
34
+ --color-secondary: var(--secondary);
35
+ --color-primary-foreground: var(--primary-foreground);
36
+ --color-primary: var(--primary);
37
+ --color-popover-foreground: var(--popover-foreground);
38
+ --color-popover: var(--popover);
39
+ --color-card-foreground: var(--card-foreground);
40
+ --color-card: var(--card);
41
+ --color-foreground: var(--foreground);
42
+ --color-background: var(--background);
43
+ --radius-sm: calc(var(--radius) * 0.6);
44
+ --radius-md: calc(var(--radius) * 0.8);
45
+ --radius-lg: var(--radius);
46
+ --radius-xl: calc(var(--radius) * 1.4);
47
+ --radius-2xl: calc(var(--radius) * 1.8);
48
+ --radius-3xl: calc(var(--radius) * 2.2);
49
+ --radius-4xl: calc(var(--radius) * 2.6);
50
+
51
+ /* Formant Custom Colors */
52
+ --color-deep-command: #0A0F11;
53
+ --color-slate-mist: #202428;
54
+ --color-formant-white: #F2F3F4;
55
+ --color-system-neutral: #A3ABA9;
56
+ --color-fog-green: #4B5E53;
57
+ --color-ethereal-teal: #2C4142;
58
+ --color-horizon-glow: #ACC3B3;
59
+ --color-terminal-amber: #E8AB7F;
60
+ --color-interface-iris: #8B8CF4;
61
+ }
62
+
63
+ :root {
64
+ /* Formant Dark Theme (Default) - Slate Mist Background */
65
+ --background: #202428;
66
+ --foreground: #F2F3F4;
67
+ --card: #0A0F11;
68
+ --card-foreground: #F2F3F4;
69
+ --popover: #202428;
70
+ --popover-foreground: #F2F3F4;
71
+ --primary: #ACC3B3;
72
+ --primary-foreground: #0A0F11;
73
+ --secondary: #202428;
74
+ --secondary-foreground: #F2F3F4;
75
+ --muted: #202428;
76
+ --muted-foreground: #A3ABA9;
77
+ --accent: #2C4142;
78
+ --accent-foreground: #F2F3F4;
79
+ --destructive: #E8AB7F;
80
+ --destructive-foreground: #0A0F11;
81
+ --border: rgba(163, 171, 169, 0.1);
82
+ --input: rgba(163, 171, 169, 0.2);
83
+ --ring: #ACC3B3;
84
+ --chart-1: #ACC3B3;
85
+ --chart-2: #4B5E53;
86
+ --chart-3: #2C4142;
87
+ --chart-4: #E8AB7F;
88
+ --chart-5: #8B8CF4;
89
+ --radius: 0.25rem;
90
+ --sidebar: #0A0F11;
91
+ --sidebar-foreground: #F2F3F4;
92
+ --sidebar-primary: #ACC3B3;
93
+ --sidebar-primary-foreground: #0A0F11;
94
+ --sidebar-accent: #202428;
95
+ --sidebar-accent-foreground: #F2F3F4;
96
+ --sidebar-border: rgba(163, 171, 169, 0.1);
97
+ --sidebar-ring: #ACC3B3;
98
+
99
+ /* Formant Brand Colors */
100
+ --deep-command: #0A0F11;
101
+ --slate-mist: #202428;
102
+ --formant-white: #F2F3F4;
103
+ --system-neutral: #A3ABA9;
104
+ --fog-green: #4B5E53;
105
+ --ethereal-teal: #2C4142;
106
+ --horizon-glow: #ACC3B3;
107
+ --terminal-amber: #E8AB7F;
108
+ --interface-iris: #8B8CF4;
109
+ }
110
+
111
+ @layer base {
112
+ * {
113
+ @apply border-border outline-ring/50;
114
+ }
115
+ body {
116
+ @apply bg-background text-foreground;
117
+ font-family: 'Inter', sans-serif;
118
+ }
119
+ html {
120
+ @apply font-sans;
121
+ }
122
+ h1, h2, h3, h4, h5, h6 {
123
+ font-family: 'Space Grotesk', sans-serif;
124
+ letter-spacing: -0.02em;
125
+ }
126
+ code, pre, .font-mono {
127
+ font-family: 'JetBrains Mono', monospace;
128
+ }
129
+ }
130
+
131
+ /* Formant Typography Utilities */
132
+ .font-heading {
133
+ font-family: 'Space Grotesk', sans-serif;
134
+ letter-spacing: -0.02em;
135
+ }
136
+
137
+ .font-sans {
138
+ font-family: 'Inter', sans-serif;
139
+ }
140
+
141
+ .font-mono {
142
+ font-family: 'JetBrains Mono', monospace;
143
+ letter-spacing: 0.02em;
144
+ }
145
+
146
+ /* Formant Brand Color Utilities */
147
+ .bg-deep-command { background-color: #0A0F11; }
148
+ .bg-slate-mist { background-color: #202428; }
149
+ .bg-formant-white { background-color: #F2F3F4; }
150
+ .bg-system-neutral { background-color: #A3ABA9; }
151
+ .bg-fog-green { background-color: #4B5E53; }
152
+ .bg-ethereal-teal { background-color: #2C4142; }
153
+ .bg-horizon-glow { background-color: #ACC3B3; }
154
+ .bg-terminal-amber { background-color: #E8AB7F; }
155
+ .bg-interface-iris { background-color: #8B8CF4; }
156
+
157
+ .text-deep-command { color: #0A0F11; }
158
+ .text-slate-mist { color: #202428; }
159
+ .text-formant-white { color: #F2F3F4; }
160
+ .text-system-neutral { color: #A3ABA9; }
161
+ .text-fog-green { color: #4B5E53; }
162
+ .text-ethereal-teal { color: #2C4142; }
163
+ .text-horizon-glow { color: #ACC3B3; }
164
+ .text-terminal-amber { color: #E8AB7F; }
165
+ .text-interface-iris { color: #8B8CF4; }
166
+
167
+ .border-fog-green { border-color: rgba(75, 94, 83, 0.4); }
168
+ .border-terminal-amber { border-color: rgba(232, 171, 127, 0.25); }
169
+ .border-interface-iris { border-color: rgba(139, 140, 244, 0.25); }
170
+
171
+ /* Formant Animation Utilities */
172
+ @keyframes fadeUp {
173
+ from {
174
+ opacity: 0;
175
+ transform: translateY(24px);
176
+ }
177
+ to {
178
+ opacity: 1;
179
+ transform: translateY(0);
180
+ }
181
+ }
182
+
183
+ .animate-fade-up {
184
+ animation: fadeUp 0.7s ease forwards;
185
+ }
186
+
187
+ /* Formant Section Label Style */
188
+ .section-label {
189
+ font-family: 'JetBrains Mono', monospace;
190
+ font-size: 10px;
191
+ letter-spacing: 0.3em;
192
+ color: #E8AB7F;
193
+ text-transform: uppercase;
194
+ display: flex;
195
+ align-items: center;
196
+ gap: 12px;
197
+ }
198
+
199
+ .section-label::before {
200
+ content: '';
201
+ display: block;
202
+ width: 24px;
203
+ height: 1px;
204
+ background: #E8AB7F;
205
+ }
206
+
207
+ /* Custom scrollbar for dark theme */
208
+ ::-webkit-scrollbar {
209
+ width: 8px;
210
+ height: 8px;
211
+ }
212
+
213
+ ::-webkit-scrollbar-track {
214
+ background: #0A0F11;
215
+ }
216
+
217
+ ::-webkit-scrollbar-thumb {
218
+ background: #4B5E53;
219
+ border-radius: 4px;
220
+ }
221
+
222
+ ::-webkit-scrollbar-thumb:hover {
223
+ background: #ACC3B3;
224
+ }