@fusion.dev/helix-docs 0.227.0 → 0.229.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/content/color.mdx CHANGED
@@ -24,9 +24,9 @@ The surfaces above it form an ordered ladder:
24
24
  | --- | --- | --- |
25
25
  | `--helix-color-background` | <span data-token-swatch style={{ background: 'var(--helix-color-background)' }} /> | The page background. Every other surface sits on it. |
26
26
  | `--helix-color-surface` | <span data-token-swatch style={{ background: 'var(--helix-color-surface)' }} /> | A surface on the page, such as a card or a panel. The separation policy sets it apart with a fill, a border, or a shadow. |
27
- | `--helix-color-surface-raised` | <span data-token-swatch style={{ background: 'var(--helix-color-surface-raised)' }} /> | A raised surface on the page, such as a selected tab or a hovered row. Its fill is one step down the ramp. |
27
+ | `--helix-color-surface-raised` | <span data-token-swatch style={{ background: 'var(--helix-color-surface-raised)' }} /> | A panel raised inside a surface, such as a card inside a card. Its fill is one step down the ramp. |
28
28
  | `--helix-color-surface-overlay` | <span data-token-swatch style={{ background: 'var(--helix-color-surface-overlay)' }} /> | A surface over the page, such as a menu, a popover, or a dialog. Its edge and its shadow set it apart. |
29
- | `--helix-color-surface-sunken` | <span data-token-swatch style={{ background: 'var(--helix-color-surface-sunken)' }} /> | A recessed surface that holds a value, such as an input, a track, or a groove. Its fill sets it apart. |
29
+ | `--helix-color-surface-sunken` | <span data-token-swatch style={{ background: 'var(--helix-color-surface-sunken)' }} /> | A recessed surface, such as a track or a groove. Its fill sets it apart. A field reads `well`. |
30
30
 
31
31
  [//]: # (/tokens)
32
32
 
@@ -47,7 +47,8 @@ Inks are the colors that go on grounds. The base ink is `foreground`.
47
47
  placeholder, a hint, or a caption. The engine solves it to the contrast
48
48
  target.
49
49
  - `foreground-subtle` recedes further. It is for marks that are not text, such
50
- as a separator, a chevron, or a grip, and for the text of a disabled control.
50
+ as a separator, a chevron, or a grip. A disabled control fades whole, through
51
+ `--helix-opacity-disabled`.
51
52
  It is a fixed step of the gray ramp, and the engine does not solve it, so its
52
53
  contrast is not guaranteed. Use `foreground-muted` for text that is read.
53
54
  - Text on a filled color takes the ink named for that fill:
@@ -139,7 +140,7 @@ readable grays has room for one quiet ink, and `foreground-muted` is that ink, s
139
140
  `foreground-subtle` stays a fixed step of the stylesheet's gray ramp and its
140
141
  contrast is not guaranteed. A component paints its quiet text in
141
142
  `foreground-muted`, and keeps `foreground-subtle` for marks that are not text and
142
- for the text of a disabled control.
143
+ for a mark that recedes.
143
144
 
144
145
  The engine can solve only the pairs it knows about, so we check two things:
145
146
 
@@ -53,6 +53,7 @@ for the cases the top layer does not cover:
53
53
  | `--helix-shadow-lg` | `0 12px 32px var(--_helix-shadow-ink-lg)` |
54
54
  | `--helix-shadow-surface` | `var(--helix-shadow-none)` |
55
55
  | `--helix-shadow-floating` | `var(--helix-shadow-lg)` |
56
+ | `--helix-shadow-raised` | `var(--helix-shadow-floating)` |
56
57
 
57
58
  [//]: # (/tokens)
58
59
 
@@ -62,19 +63,21 @@ separation](./surfaces-and-separation).
62
63
 
63
64
  ## Material
64
65
 
65
- Eight tokens describe translucency:
66
+ Ten tokens describe translucency:
66
67
 
67
68
  [//]: # (tokens:material)
68
69
 
69
70
  | Token | Value | For |
70
71
  | --- | --- | --- |
71
- | `--helix-material-backdrop` | `blur(var(--helix-material-blur-md)) saturate(1.5)` | The tint behind a modal. |
72
+ | `--helix-material-backdrop` | `blur(var(--helix-material-blur-md)) saturate(1.5)` | The blur and saturation behind a translucent surface. |
72
73
  | `--helix-material-opacity` | `1` | How opaque a translucent surface is. |
73
74
  | `--helix-material-blur-sm` | `8px` | The lightest backdrop blur. |
74
75
  | `--helix-material-blur-md` | `16px` | The backdrop blur behind a modal. |
75
76
  | `--helix-material-blur-lg` | `32px` | The heaviest backdrop blur. |
76
- | `--helix-material-translucent` | `color-mix(in oklab, light-dark(oklch(1 0 0), oklch(0.182 var(--helix-seed-neutral-chroma, 0) var(--helix-seed-neutral-hue, 258))) 30%, transparent)` | The translucent background, for a surface that shows what is behind it. |
77
+ | `--helix-material-translucent` | `light-dark(color-mix(in oklab, oklch(1 0 0) 30%, transparent), color-mix(in oklab, oklch(0.182 var(--helix-seed-neutral-chroma, 0) var(--helix-seed-neutral-hue, 258)) 60%, transparent))` | The translucent background, for a surface that shows what is behind it. |
77
78
  | `--helix-material-translucent-strong` | `color-mix(in oklab, light-dark(oklch(1 0 0), oklch(0.182 var(--helix-seed-neutral-chroma, 0) var(--helix-seed-neutral-hue, 258))) 88%, transparent)` | The stronger translucent background, for a surface that shows less of what is behind it. |
79
+ | `--helix-material-modal` | `light-dark(var(--helix-material-translucent-strong), var(--helix-material-translucent))` | The glass of a Dialog or Drawer, which sits over its own scrim. |
80
+ | `--helix-material-panel` | `light-dark(color-mix(in oklab, oklch(1 0 0) 72%, transparent), var(--helix-material-translucent))` | The glass of a panel over the page, such as a Menu, Popover, or Tooltip. |
78
81
  | `--helix-material-border` | `light-dark(color-mix(in oklab, oklch(0.15 var(--helix-seed-neutral-chroma, 0) var(--helix-seed-neutral-hue, 258)) 14%, transparent), color-mix(in oklab, oklch(1 0 0) 12%, transparent))` | The border a translucent surface needs to keep a visible edge. |
79
82
 
80
83
  [//]: # (/tokens)
@@ -22,10 +22,16 @@ If you do not have a project yet, the scaffolder writes one with Helix
22
22
  installed, the stylesheets imported, and every element registered:
23
23
 
24
24
  ```sh
25
- npm create @fusion.dev/helix-app@latest my-app -- --template react-vite
25
+ npm create @fusion.dev/helix-app@latest
26
+ ```
27
+
28
+ The command asks for a project name and a template. To skip the questions, name
29
+ both:
30
+
31
+ ```sh
32
+ npm create @fusion.dev/helix-app@latest my-app --template react-vite
26
33
  ```
27
34
 
28
- Leave out `--template`, and the command lists the templates and writes nothing.
29
35
  Each template starts with the same three pages:
30
36
 
31
37
  - a landing page