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.
Files changed (70) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/CONSUMER_GUIDE.md +83 -41
  3. package/DESIGN.md +617 -404
  4. package/README.md +69 -68
  5. package/SKILL.md +104 -73
  6. package/dist/7k-design-system.css +1 -1
  7. package/dist/animations.css +1 -1
  8. package/dist/components.css +1 -1
  9. package/dist/mockServiceWorker.js +361 -0
  10. package/dist/projects.css +1 -0
  11. package/dist/react/components/Alert.d.ts +3 -0
  12. package/dist/react/components/Card.d.ts +5 -0
  13. package/dist/react/components/Checkbox.d.ts +3 -0
  14. package/dist/react/components/Drawer.d.ts +3 -0
  15. package/dist/react/components/Icon.d.ts +3 -0
  16. package/dist/react/components/IsometricBackground.d.ts +3 -0
  17. package/dist/react/components/MangaPanel.d.ts +3 -0
  18. package/dist/react/components/Modal.d.ts +5 -0
  19. package/dist/react/components/Nav.d.ts +4 -0
  20. package/dist/react/components/Radio.d.ts +3 -0
  21. package/dist/react/components/Select.d.ts +4 -0
  22. package/dist/react/components/Tabs.d.ts +9 -0
  23. package/dist/react/components/TextureOverlay.d.ts +3 -0
  24. package/dist/react/components/Toast.d.ts +3 -0
  25. package/dist/react/components/Toggle.d.ts +3 -0
  26. package/dist/react/components/Tooltip.d.ts +3 -0
  27. package/dist/react/index.cjs +1 -1
  28. package/dist/react/index.d.ts +27 -0
  29. package/dist/react/index.js +863 -95
  30. package/dist/react/mockServiceWorker.js +361 -0
  31. package/dist/react/theme/ProjectProvider.d.ts +15 -0
  32. package/dist/react/theme/projects.d.ts +4 -0
  33. package/dist/react/theme/useProject.d.ts +3 -0
  34. package/dist/react/types.d.ts +136 -0
  35. package/dist/textures.css +1 -1
  36. package/dist/tokens.css +1 -1
  37. package/package.json +35 -19
  38. package/dist/preview/brand-assets.html +0 -83
  39. package/dist/preview/colors-primary.html +0 -101
  40. package/dist/preview/components-buttons.html +0 -84
  41. package/dist/preview/spacing-tokens.html +0 -79
  42. package/dist/preview/textures-backgrounds.html +0 -102
  43. package/dist/preview/typography-specimens.html +0 -73
  44. package/dist/react/react/components/Badge.stories.d.ts +0 -12
  45. package/dist/react/react/components/Button.stories.d.ts +0 -16
  46. package/dist/react/react/components/Input.stories.d.ts +0 -11
  47. package/dist/react/react/components/ThemeToggle.stories.d.ts +0 -7
  48. package/dist/react/react/index.d.ts +0 -8
  49. package/dist/react/react/types.d.ts +0 -33
  50. package/dist/react/stories/Components.stories.d.ts +0 -10
  51. package/dist/react/stories/Textures.stories.d.ts +0 -11
  52. package/preview/brand-assets.html +0 -83
  53. package/preview/colors-primary.html +0 -101
  54. package/preview/components-buttons.html +0 -84
  55. package/preview/spacing-tokens.html +0 -79
  56. package/preview/textures-backgrounds.html +0 -102
  57. package/preview/typography-specimens.html +0 -73
  58. /package/build/{icon.svg → icons/icon.svg} +0 -0
  59. /package/build/{logo-7k-light.svg → logos/logo-7k-light.svg} +0 -0
  60. /package/build/{logo-7k.svg → logos/logo-7k.svg} +0 -0
  61. /package/dist/build/{icon.svg → icons/icon.svg} +0 -0
  62. /package/dist/build/{logo-7k-light.svg → logos/logo-7k-light.svg} +0 -0
  63. /package/dist/build/{logo-7k.svg → logos/logo-7k.svg} +0 -0
  64. /package/dist/react/{react/components → components}/Badge.d.ts +0 -0
  65. /package/dist/react/{react/components → components}/Button.d.ts +0 -0
  66. /package/dist/react/{react/components → components}/Input.d.ts +0 -0
  67. /package/dist/react/{react/components → components}/ThemeToggle.d.ts +0 -0
  68. /package/dist/react/{react/theme → theme}/ThemeContext.d.ts +0 -0
  69. /package/dist/react/{react/theme → theme}/ThemeProvider.d.ts +0 -0
  70. /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" // 'primary' | 'secondary' | 'ghost' | 'glow' | 'glow-cyan' | 'glow-grid' | 'danger'
216
- size="md" // 'sm' | 'md' | 'lg'
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" // 'button' | 'submit' | 'reset'
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" // any HTML input type
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" // 'default' | 'success' | 'warning' | 'danger' | 'info' | 'neutral'
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
- Each 7K sub-project can override the accent color while keeping the same base design.
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
- --accent-circle: var(--cyan-500);
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
- --accent-grid: var(--acid-500);
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
- --accent-line: var(--ember-500);
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
- <div className="project-neon">
327
+ <ProjectProvider defaultProject="circle">
283
328
  <YourApp />
284
- </div>
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 style={{
367
- position: 'sticky',
368
- top: 0,
369
- display: 'flex',
370
- justifyContent: 'space-between',
371
- padding: '12px 24px',
372
- background: 'var(--bg-base)',
373
- borderBottom: '2px solid var(--border-default)'
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
- AI pipelines, and digital products.
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. Open `preview/*.html` files to see token values rendered
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