7k-design-system 1.1.0 → 1.1.1
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/CHANGELOG.md +9 -0
- package/CONSUMER_GUIDE.md +83 -41
- package/DESIGN.md +617 -404
- package/README.md +69 -68
- package/SKILL.md +104 -73
- package/dist/7k-design-system.css +1 -1
- package/dist/animations.css +1 -1
- package/dist/components.css +1 -1
- package/dist/mockServiceWorker.js +361 -0
- package/dist/projects.css +1 -0
- package/dist/react/components/Alert.d.ts +3 -0
- package/dist/react/components/Card.d.ts +5 -0
- package/dist/react/components/Checkbox.d.ts +3 -0
- package/dist/react/components/Drawer.d.ts +3 -0
- package/dist/react/components/Icon.d.ts +3 -0
- package/dist/react/components/IsometricBackground.d.ts +3 -0
- package/dist/react/components/MangaPanel.d.ts +3 -0
- package/dist/react/components/Modal.d.ts +5 -0
- package/dist/react/components/Nav.d.ts +4 -0
- package/dist/react/components/Radio.d.ts +3 -0
- package/dist/react/components/Select.d.ts +4 -0
- package/dist/react/components/Tabs.d.ts +9 -0
- package/dist/react/components/TextureOverlay.d.ts +3 -0
- package/dist/react/components/Toast.d.ts +3 -0
- package/dist/react/components/Toggle.d.ts +3 -0
- package/dist/react/components/Tooltip.d.ts +3 -0
- package/dist/react/index.cjs +1 -1
- package/dist/react/index.d.ts +27 -0
- package/dist/react/index.js +863 -95
- package/dist/react/mockServiceWorker.js +361 -0
- package/dist/react/theme/ProjectProvider.d.ts +15 -0
- package/dist/react/theme/projects.d.ts +4 -0
- package/dist/react/theme/useProject.d.ts +3 -0
- package/dist/react/types.d.ts +136 -0
- package/dist/textures.css +1 -1
- package/dist/tokens.css +1 -1
- package/package.json +35 -19
- package/dist/preview/brand-assets.html +0 -83
- package/dist/preview/colors-primary.html +0 -101
- package/dist/preview/components-buttons.html +0 -84
- package/dist/preview/spacing-tokens.html +0 -79
- package/dist/preview/textures-backgrounds.html +0 -102
- package/dist/preview/typography-specimens.html +0 -73
- package/dist/react/react/components/Badge.stories.d.ts +0 -12
- package/dist/react/react/components/Button.stories.d.ts +0 -16
- package/dist/react/react/components/Input.stories.d.ts +0 -11
- package/dist/react/react/components/ThemeToggle.stories.d.ts +0 -7
- package/dist/react/react/index.d.ts +0 -8
- package/dist/react/react/types.d.ts +0 -33
- package/dist/react/stories/Components.stories.d.ts +0 -10
- package/dist/react/stories/Textures.stories.d.ts +0 -11
- package/preview/brand-assets.html +0 -83
- package/preview/colors-primary.html +0 -101
- package/preview/components-buttons.html +0 -84
- package/preview/spacing-tokens.html +0 -79
- package/preview/textures-backgrounds.html +0 -102
- package/preview/typography-specimens.html +0 -73
- /package/build/{icon.svg → icons/icon.svg} +0 -0
- /package/build/{logo-7k-light.svg → logos/logo-7k-light.svg} +0 -0
- /package/build/{logo-7k.svg → logos/logo-7k.svg} +0 -0
- /package/dist/build/{icon.svg → icons/icon.svg} +0 -0
- /package/dist/build/{logo-7k-light.svg → logos/logo-7k-light.svg} +0 -0
- /package/dist/build/{logo-7k.svg → logos/logo-7k.svg} +0 -0
- /package/dist/react/{react/components → components}/Badge.d.ts +0 -0
- /package/dist/react/{react/components → components}/Button.d.ts +0 -0
- /package/dist/react/{react/components → components}/Input.d.ts +0 -0
- /package/dist/react/{react/components → components}/ThemeToggle.d.ts +0 -0
- /package/dist/react/{react/theme → theme}/ThemeContext.d.ts +0 -0
- /package/dist/react/{react/theme → theme}/ThemeProvider.d.ts +0 -0
- /package/dist/react/{react/theme → theme}/useTheme.d.ts +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,12 @@
|
|
|
1
|
+
## [1.1.1](https://github.com/7K-Group/7k-design-system/compare/v1.1.0...v1.1.1) (2026-08-13)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* add missing perms ([b0e54a3](https://github.com/7K-Group/7k-design-system/commit/b0e54a3be2ff1248736e3c0de379c61a02af750d))
|
|
7
|
+
* do not run ci on main and cd ([f38dce0](https://github.com/7K-Group/7k-design-system/commit/f38dce02bcb8e938b916a59acfede57225e18905))
|
|
8
|
+
* release process failing ([ab488bc](https://github.com/7K-Group/7k-design-system/commit/ab488bc40537ed54dc04a606eef668da317a812b))
|
|
9
|
+
|
|
1
10
|
# [1.1.0](https://github.com/7K-Group/7k-design-system/compare/v1.0.0...v1.1.0) (2026-06-05)
|
|
2
11
|
|
|
3
12
|
|
package/CONSUMER_GUIDE.md
CHANGED
|
@@ -116,16 +116,16 @@ All CSS custom properties are available globally:
|
|
|
116
116
|
background: var(--bg-elevated);
|
|
117
117
|
color: var(--text-primary);
|
|
118
118
|
border: 2px solid var(--border-default);
|
|
119
|
-
|
|
119
|
+
|
|
120
120
|
/* Typography */
|
|
121
121
|
font-family: var(--font-sans);
|
|
122
122
|
font-size: var(--text-body);
|
|
123
123
|
line-height: var(--leading-normal);
|
|
124
|
-
|
|
124
|
+
|
|
125
125
|
/* Spacing */
|
|
126
126
|
padding: var(--space-4);
|
|
127
127
|
gap: var(--space-2);
|
|
128
|
-
|
|
128
|
+
|
|
129
129
|
/* Brand accent */
|
|
130
130
|
border-color: var(--brand-primary);
|
|
131
131
|
}
|
|
@@ -194,7 +194,7 @@ import { useTheme } from '7k-design-system/react';
|
|
|
194
194
|
|
|
195
195
|
function ThemeAwareComponent() {
|
|
196
196
|
const { theme, toggleTheme, setTheme } = useTheme();
|
|
197
|
-
|
|
197
|
+
|
|
198
198
|
return (
|
|
199
199
|
<div>
|
|
200
200
|
<p>Current theme: {theme}</p>
|
|
@@ -212,11 +212,12 @@ function ThemeAwareComponent() {
|
|
|
212
212
|
|
|
213
213
|
```tsx
|
|
214
214
|
<Button
|
|
215
|
-
variant="primary"
|
|
216
|
-
size="md"
|
|
215
|
+
variant="primary" // 'primary' | 'secondary' | 'ghost' | 'glow' | 'accent' | 'glow-accent' | 'glow-secondary' | 'danger'
|
|
216
|
+
size="md" // 'sm' | 'md' | 'lg'
|
|
217
217
|
disabled={false}
|
|
218
|
+
loading={false}
|
|
218
219
|
onClick={() => {}}
|
|
219
|
-
type="button"
|
|
220
|
+
type="button" // 'button' | 'submit' | 'reset'
|
|
220
221
|
>
|
|
221
222
|
Click me
|
|
222
223
|
</Button>
|
|
@@ -226,11 +227,13 @@ function ThemeAwareComponent() {
|
|
|
226
227
|
|
|
227
228
|
```tsx
|
|
228
229
|
<Input
|
|
229
|
-
type="text"
|
|
230
|
+
type="text" // any HTML input type
|
|
230
231
|
placeholder="Hint"
|
|
231
232
|
disabled={false}
|
|
232
233
|
value={value}
|
|
233
234
|
onChange={(value) => setValue(value)}
|
|
235
|
+
label="Email"
|
|
236
|
+
error="Required"
|
|
234
237
|
/>
|
|
235
238
|
```
|
|
236
239
|
|
|
@@ -238,37 +241,79 @@ function ThemeAwareComponent() {
|
|
|
238
241
|
|
|
239
242
|
```tsx
|
|
240
243
|
<Badge
|
|
241
|
-
variant="default"
|
|
244
|
+
variant="default" // 'default' | 'accent' | 'success' | 'warning' | 'danger' | 'info' | 'neutral'
|
|
245
|
+
role="status"
|
|
242
246
|
>
|
|
243
247
|
Status
|
|
244
248
|
</Badge>
|
|
245
249
|
```
|
|
246
250
|
|
|
251
|
+
#### Card
|
|
252
|
+
|
|
253
|
+
```tsx
|
|
254
|
+
<Card texture="halftone" hover={true}>
|
|
255
|
+
<CardHeader>Title</CardHeader>
|
|
256
|
+
<CardBody>Content</CardBody>
|
|
257
|
+
</Card>
|
|
258
|
+
```
|
|
259
|
+
|
|
260
|
+
#### Modal
|
|
261
|
+
|
|
262
|
+
```tsx
|
|
263
|
+
<Modal open={isOpen} onClose={close} texture="noise" aria-labelledby="modal-title">
|
|
264
|
+
<ModalHeader>
|
|
265
|
+
<h2 id="modal-title">Title</h2>
|
|
266
|
+
</ModalHeader>
|
|
267
|
+
<p>Content</p>
|
|
268
|
+
<ModalFooter>
|
|
269
|
+
<Button onClick={close}>Close</Button>
|
|
270
|
+
</ModalFooter>
|
|
271
|
+
</Modal>
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
#### Layout helpers
|
|
275
|
+
|
|
276
|
+
```tsx
|
|
277
|
+
<TextureOverlay texture="halftone" animate>...</TextureOverlay>
|
|
278
|
+
<IsometricBackground pattern="grid" animated>...</IsometricBackground>
|
|
279
|
+
<MangaPanel frame texture="halftone" speedLine="horizontal">...</MangaPanel>
|
|
280
|
+
```
|
|
281
|
+
|
|
282
|
+
#### Forms
|
|
283
|
+
|
|
284
|
+
```tsx
|
|
285
|
+
<Checkbox label="Accept" />
|
|
286
|
+
<Radio label="Option" name="group" />
|
|
287
|
+
<Toggle label="Enable" checked={on} onChange={setOn} />
|
|
288
|
+
<Select><option>A</option></Select>
|
|
289
|
+
<Textarea rows={4} />
|
|
290
|
+
```
|
|
291
|
+
|
|
247
292
|
---
|
|
248
293
|
|
|
249
294
|
## Project Customization
|
|
250
295
|
|
|
251
|
-
|
|
296
|
+
The parent 7K brand uses magenta primary + cyan secondary. Each sub-project can theme the secondary accent while keeping the same base design.
|
|
252
297
|
|
|
253
298
|
### Override Accent Colors
|
|
254
299
|
|
|
255
300
|
```css
|
|
256
301
|
/* project-neon.css */
|
|
257
302
|
.project-neon {
|
|
258
|
-
/* Circle project — cyan accent */
|
|
259
|
-
--
|
|
303
|
+
/* Circle project — cyan secondary accent */
|
|
304
|
+
--brand-secondary: var(--cyan-500);
|
|
260
305
|
}
|
|
261
306
|
|
|
262
307
|
/* project-grid.css */
|
|
263
308
|
.project-grid {
|
|
264
|
-
/* Grid project — acid green accent */
|
|
265
|
-
--
|
|
309
|
+
/* Grid project — acid green secondary accent */
|
|
310
|
+
--brand-secondary: var(--acid-500);
|
|
266
311
|
}
|
|
267
312
|
|
|
268
313
|
/* project-ember.css */
|
|
269
314
|
.project-ember {
|
|
270
|
-
/* Line project — orange accent */
|
|
271
|
-
--
|
|
315
|
+
/* Line project — orange secondary accent */
|
|
316
|
+
--brand-secondary: var(--ember-500);
|
|
272
317
|
}
|
|
273
318
|
```
|
|
274
319
|
|
|
@@ -279,9 +324,9 @@ Each 7K sub-project can override the accent color while keeping the same base de
|
|
|
279
324
|
function App() {
|
|
280
325
|
return (
|
|
281
326
|
<ThemeProvider>
|
|
282
|
-
<
|
|
327
|
+
<ProjectProvider defaultProject="circle">
|
|
283
328
|
<YourApp />
|
|
284
|
-
</
|
|
329
|
+
</ProjectProvider>
|
|
285
330
|
</ThemeProvider>
|
|
286
331
|
);
|
|
287
332
|
}
|
|
@@ -363,29 +408,31 @@ import { Button, ThemeToggle } from '7k-design-system/react';
|
|
|
363
408
|
export function Home() {
|
|
364
409
|
return (
|
|
365
410
|
<div className="project-neon">
|
|
366
|
-
<nav
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
411
|
+
<nav
|
|
412
|
+
style={{
|
|
413
|
+
position: 'sticky',
|
|
414
|
+
top: 0,
|
|
415
|
+
display: 'flex',
|
|
416
|
+
justifyContent: 'space-between',
|
|
417
|
+
padding: '12px 24px',
|
|
418
|
+
background: 'var(--bg-base)',
|
|
419
|
+
borderBottom: '2px solid var(--border-default)',
|
|
420
|
+
}}
|
|
421
|
+
>
|
|
375
422
|
<span className="mono-label">7K GROUP</span>
|
|
376
423
|
<ThemeToggle />
|
|
377
424
|
</nav>
|
|
378
425
|
|
|
379
|
-
<section
|
|
380
|
-
className="scanline"
|
|
381
|
-
style={{
|
|
426
|
+
<section
|
|
427
|
+
className="scanline"
|
|
428
|
+
style={{
|
|
382
429
|
minHeight: '80vh',
|
|
383
430
|
display: 'flex',
|
|
384
431
|
flexDirection: 'column',
|
|
385
432
|
alignItems: 'center',
|
|
386
433
|
justifyContent: 'center',
|
|
387
434
|
textAlign: 'center',
|
|
388
|
-
padding: 'var(--space-8)'
|
|
435
|
+
padding: 'var(--space-8)',
|
|
389
436
|
}}
|
|
390
437
|
>
|
|
391
438
|
<span className="mono-label" style={{ color: 'var(--brand-primary)' }}>
|
|
@@ -395,8 +442,8 @@ export function Home() {
|
|
|
395
442
|
Built for Midnight
|
|
396
443
|
</h1>
|
|
397
444
|
<p className="body-lg" style={{ maxWidth: '600px', marginTop: 'var(--space-4)' }}>
|
|
398
|
-
A multi-project technology company crafting infrastructure,
|
|
399
|
-
|
|
445
|
+
A multi-project technology company crafting infrastructure, AI pipelines, and digital
|
|
446
|
+
products.
|
|
400
447
|
</p>
|
|
401
448
|
<div style={{ display: 'flex', gap: 'var(--space-3)', marginTop: 'var(--space-6)' }}>
|
|
402
449
|
<Button variant="glow">Explore Projects</Button>
|
|
@@ -404,15 +451,10 @@ export function Home() {
|
|
|
404
451
|
</div>
|
|
405
452
|
</section>
|
|
406
453
|
|
|
407
|
-
<section
|
|
408
|
-
className="halftone-md"
|
|
409
|
-
style={{ padding: 'var(--space-8)' }}
|
|
410
|
-
>
|
|
454
|
+
<section className="halftone-md" style={{ padding: 'var(--space-8)' }}>
|
|
411
455
|
<span className="mono-label">PHILOSOPHY</span>
|
|
412
456
|
<h2 className="h2">Dark First</h2>
|
|
413
|
-
<p className="body">
|
|
414
|
-
We design for the dark. Light mode is opt-in, not default.
|
|
415
|
-
</p>
|
|
457
|
+
<p className="body">We design for the dark. Light mode is opt-in, not default.</p>
|
|
416
458
|
</section>
|
|
417
459
|
</div>
|
|
418
460
|
);
|
|
@@ -466,6 +508,6 @@ Make sure your `tsconfig.json` includes:
|
|
|
466
508
|
## Next Steps
|
|
467
509
|
|
|
468
510
|
1. Run `npm run storybook` in the design system repo to explore all components
|
|
469
|
-
2.
|
|
511
|
+
2. Browse the Tokens, Textures, and Components stories to see token values rendered
|
|
470
512
|
3. Read `DESIGN.md` for detailed design principles and constraints
|
|
471
513
|
4. Check `CONTRIBUTING.md` if you want to contribute back
|