@fusion.dev/helix-docs 0.104.0 → 0.105.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.
Files changed (48) hide show
  1. package/content/accessibility.mdx +92 -71
  2. package/content/angular.mdx +26 -24
  3. package/content/browser-support.mdx +61 -58
  4. package/content/building-on-the-headless-tier.mdx +100 -74
  5. package/content/charting.mdx +98 -79
  6. package/content/coding-agents.mdx +87 -69
  7. package/content/color-modes.mdx +40 -37
  8. package/content/color.mdx +67 -54
  9. package/content/composition.mdx +85 -83
  10. package/content/elevation-and-material.mdx +32 -29
  11. package/content/events.mdx +77 -65
  12. package/content/forms.mdx +69 -58
  13. package/content/iconography.mdx +75 -71
  14. package/content/installation.mdx +77 -68
  15. package/content/intent-reference.mdx +59 -54
  16. package/content/introduction.mdx +25 -23
  17. package/content/localization.mdx +122 -82
  18. package/content/maps.mdx +222 -0
  19. package/content/metrics.mdx +294 -297
  20. package/content/motion.mdx +44 -36
  21. package/content/other-frameworks.mdx +33 -31
  22. package/content/overlays.mdx +72 -54
  23. package/content/overriding-a-component.mdx +85 -74
  24. package/content/react.mdx +72 -64
  25. package/content/recipes.mdx +64 -47
  26. package/content/routing.mdx +100 -93
  27. package/content/sandbox.mdx +39 -39
  28. package/content/server-rendering.mdx +95 -84
  29. package/content/shape-and-borders.mdx +44 -37
  30. package/content/size-and-density.mdx +51 -46
  31. package/content/space-and-size.mdx +41 -34
  32. package/content/state-and-control.mdx +63 -51
  33. package/content/surfaces-and-separation.mdx +55 -53
  34. package/content/svelte.mdx +20 -19
  35. package/content/theme-builder.mdx +42 -31
  36. package/content/theming.mdx +58 -51
  37. package/content/tiers.mdx +69 -61
  38. package/content/tokens.mdx +72 -53
  39. package/content/typography.mdx +47 -47
  40. package/content/using-helix-with-an-agent.mdx +147 -115
  41. package/content/using-the-elements.mdx +55 -50
  42. package/content/versioning.mdx +42 -35
  43. package/content/visual-axes.mdx +168 -146
  44. package/content/vue.mdx +24 -24
  45. package/content/without-a-bundler.mdx +40 -23
  46. package/dist/pages.generated.js +49 -43
  47. package/dist/sources.generated.js +3337 -2680
  48. package/package.json +3 -3
@@ -1,126 +1,132 @@
1
1
  export const docPages = [
2
2
  {
3
- description: 'What the library guarantees, what it cannot, and where the line is.',
3
+ description: 'What Helix components handle for you, what you handle, and what we do not test.',
4
4
  section: 'Foundations',
5
5
  slug: 'accessibility',
6
6
  title: 'Accessibility',
7
7
  },
8
8
  {
9
- description: 'The schema Angular needs before it will compile an unknown tag.',
9
+ description: 'The schema Angular needs to compile Helix tags, and how to bind properties and events.',
10
10
  parent: 'installation',
11
11
  section: 'Getting started',
12
12
  slug: 'angular',
13
13
  title: 'Angular',
14
14
  },
15
15
  {
16
- description: 'The platform features this is built on, and what is actually tested.',
16
+ description: 'The browser features Helix uses, and the browser we test in.',
17
17
  order: 5,
18
18
  section: 'Getting started',
19
19
  slug: 'browser-support',
20
20
  title: 'Browser support',
21
21
  },
22
22
  {
23
- description: 'Using the headless tier as the foundation for a design system of your own.',
23
+ description: 'Build your own design system on the Helix headless tier, with your own tag names and styles.',
24
24
  section: 'Essentials',
25
25
  slug: 'building-on-the-headless-tier',
26
26
  title: 'Building on the headless tier',
27
27
  },
28
28
  {
29
- description: 'The data channel nobody expects, and why it is a real table.',
29
+ description: 'Which chart to use, and how charts read their data from a table in the document.',
30
30
  section: 'Essentials',
31
31
  slug: 'charting',
32
32
  title: 'Charting',
33
33
  },
34
34
  {
35
- description: 'Every surface here is readable by a machine, and where each one is.',
35
+ description: 'The files an AI agent can read to write Helix code, and where to find each one.',
36
36
  order: 4,
37
37
  section: 'Getting started',
38
38
  slug: 'coding-agents',
39
39
  title: 'Coding agents',
40
40
  },
41
41
  {
42
- description: 'The roles, the ramps, and why the palette is solved rather than picked.',
42
+ description: 'The color roles, why Helix uses OKLCH, and how the engine meets contrast targets.',
43
43
  section: 'Foundations',
44
44
  slug: 'color',
45
45
  title: 'Color',
46
46
  },
47
47
  {
48
- description: 'One attribute, two modes, and no token restated to honor it.',
48
+ description: 'Switch between light and dark mode with one attribute. Each token declares both values once.',
49
49
  section: 'Foundations',
50
50
  slug: 'color-modes',
51
51
  title: 'Color modes',
52
52
  },
53
53
  {
54
- description: 'Families, parts and groups, and which to reach for.',
54
+ description: 'How Helix is organized into families, parts, and groups, and which one to use.',
55
55
  section: 'Essentials',
56
56
  slug: 'composition',
57
57
  title: 'Composition',
58
58
  },
59
59
  {
60
- description: 'Five layers, four shadows, and the glass the material tokens make possible.',
60
+ description: 'The layer, shadow, and material tokens for stacking, lifting, and translucent surfaces.',
61
61
  section: 'Foundations',
62
62
  slug: 'elevation-and-material',
63
63
  title: 'Elevation and material',
64
64
  },
65
65
  {
66
- description: 'The request and the notification, why one name is prefixed and the other is not.',
66
+ description: 'The two events each state change sends, and why one name has a prefix and the other does not.',
67
67
  section: 'Essentials',
68
68
  slug: 'events',
69
69
  title: 'Events',
70
70
  },
71
71
  {
72
- description: 'Real form participation, labels that resolve across a shadow root, and the disabled trap.',
72
+ description: 'How Helix controls take part in forms, render their own labels, and handle disabled fieldsets.',
73
73
  section: 'Essentials',
74
74
  slug: 'forms',
75
75
  title: 'Forms and validation',
76
76
  },
77
77
  {
78
- description: '105 glyphs, one geometry, and how to draw one that is not in the set.',
78
+ description: 'Draw icons from the Helix set, import glyphs directly, and build a set of your own.',
79
79
  section: 'Foundations',
80
80
  slug: 'iconography',
81
81
  title: 'Iconography',
82
82
  },
83
83
  {
84
- description: 'What to install, the order the stylesheets go in, and how to check it worked.',
84
+ description: 'What to install, the order of the stylesheets, and how to check that the elements registered.',
85
85
  order: 3,
86
86
  section: 'Getting started',
87
87
  slug: 'installation',
88
88
  title: 'Installation',
89
89
  },
90
90
  {
91
- description: 'Every input the theme engine takes, and what each one decides.',
91
+ description: 'Every input the theme engine takes, and what each one changes.',
92
92
  section: 'Theming',
93
93
  slug: 'intent-reference',
94
94
  title: 'Intent reference',
95
95
  },
96
96
  {
97
- description: 'What Helix is, and the four packages it stacks into.',
97
+ description: 'What Helix is, and the packages it includes.',
98
98
  order: 1,
99
99
  section: 'Getting started',
100
100
  slug: 'introduction',
101
101
  title: 'Introduction',
102
102
  },
103
103
  {
104
- description: 'Locale-aware controls, translatable strings, and a layout that already flips.',
104
+ description: 'Set the locale of date, time, and number controls, translate component strings, and lay out pages right to left.',
105
105
  section: 'Essentials',
106
106
  slug: 'localization',
107
107
  title: 'Localization and RTL',
108
108
  },
109
109
  {
110
- description: 'What Helix costs a page, measured rather than claimed.',
110
+ description: 'Add interactive maps to your site, styled with your theme and drawn by MapLibre or Leaflet.',
111
+ section: 'Essentials',
112
+ slug: 'maps',
113
+ title: 'Maps',
114
+ },
115
+ {
116
+ description: 'How much Helix adds to a page, measured from the built packages.',
111
117
  order: 7,
112
118
  section: 'Getting started',
113
119
  slug: 'metrics',
114
120
  title: 'Metrics',
115
121
  },
116
122
  {
117
- description: 'Four durations, five curves, and the rule every animating component has to answer.',
123
+ description: 'The duration and easing tokens, and how components handle reduced motion.',
118
124
  section: 'Foundations',
119
125
  slug: 'motion',
120
126
  title: 'Motion',
121
127
  },
122
128
  {
123
- description: 'The three rules every framework reduces to, and what they look like in each.',
129
+ description: 'The three rules for using Helix in any framework, and how each framework applies them.',
124
130
  parent: 'installation',
125
131
  section: 'Getting started',
126
132
  slug: 'other-frameworks',
@@ -128,93 +134,93 @@ export const docPages = [
128
134
  trailing: true,
129
135
  },
130
136
  {
131
- description: 'The top layer, what dismisses what, and where focus goes.',
137
+ description: 'How overlays use the top layer, how they close, and where focus goes.',
132
138
  section: 'Essentials',
133
139
  slug: 'overlays',
134
140
  title: 'Overlays and layering',
135
141
  },
136
142
  {
137
- description: 'The three ways in past a shadow root, and which one to reach for.',
143
+ description: "Change a component's styles with tokens, per-component hooks, or parts, and choose which one to use.",
138
144
  section: 'Theming',
139
145
  slug: 'overriding-a-component',
140
146
  title: 'Overriding a component',
141
147
  },
142
148
  {
143
- description: 'The typings, the hydration bridge, and how state moves.',
149
+ description: 'The React typings, the hydration bridge, and how state moves between React and the elements.',
144
150
  parent: 'installation',
145
151
  section: 'Getting started',
146
152
  slug: 'react',
147
153
  title: 'React',
148
154
  },
149
155
  {
150
- description: 'Helix styling for markup this library does not render, with no JavaScript.',
156
+ description: 'Style your own HTML with Helix data attributes and no JavaScript.',
151
157
  section: 'Foundations',
152
158
  slug: 'recipes',
153
159
  title: 'Recipes',
154
160
  },
155
161
  {
156
- description: 'Why a component renders its own anchor, and how to keep a router.',
162
+ description: "Make components navigate with real anchors, and use your framework's router with them.",
157
163
  section: 'Essentials',
158
164
  slug: 'routing',
159
165
  title: 'Routing and navigation',
160
166
  },
161
167
  {
162
- description: 'The editor beside the preview, and how to build one of your own.',
168
+ description: 'The editable examples on each component page, and what you need to build an editor of your own.',
163
169
  section: 'Tooling',
164
170
  slug: 'sandbox',
165
171
  title: 'Sandbox',
166
172
  },
167
173
  {
168
- description: 'What renders without a DOM, and what has to wait for one.',
174
+ description: 'How components render on a server with no DOM, and what waits for the browser.',
169
175
  section: 'Essentials',
170
176
  slug: 'server-rendering',
171
177
  title: 'Server rendering',
172
178
  },
173
179
  {
174
- description: 'Five radii, two widths, and the two tokens that are a policy rather than a value.',
180
+ description: 'The corner radius and border width tokens, and how a theme changes them.',
175
181
  section: 'Foundations',
176
182
  slug: 'shape-and-borders',
177
183
  title: 'Shape and borders',
178
184
  },
179
185
  {
180
- description: 'Why no control has a size, and what to write instead.',
186
+ description: 'Controls take their height from the density of the region they are in. Set the density once on the region.',
181
187
  section: 'Theming',
182
188
  slug: 'size-and-density',
183
189
  title: 'Size and density',
184
190
  },
185
191
  {
186
- description: "One spacing scale, and why a control's height is not on it.",
192
+ description: 'Use the space scale for gaps and the size tokens for the height of controls.',
187
193
  section: 'Foundations',
188
194
  slug: 'space-and-size',
189
195
  title: 'Space and size',
190
196
  },
191
197
  {
192
- description: 'Why a declared property is a seed, and how to take a decision when you want it.',
198
+ description: 'How a property you set becomes a starting value, and how to cancel or take over a change.',
193
199
  section: 'Essentials',
194
200
  slug: 'state-and-control',
195
201
  title: 'State and control',
196
202
  },
197
203
  {
198
- description: 'The four ways a surface is told apart, and the ground a component is not.',
204
+ description: 'The four ways to separate a surface from what is behind it, and the tokens that choose between them.',
199
205
  section: 'Foundations',
200
206
  slug: 'surfaces-and-separation',
201
207
  title: 'Surfaces and separation',
202
208
  },
203
209
  {
204
- description: 'Typed tags, and the framework that needs the least said about it.',
210
+ description: 'The Svelte typings, and how Svelte passes props and binds events.',
205
211
  parent: 'installation',
206
212
  section: 'Getting started',
207
213
  slug: 'svelte',
208
214
  title: 'Svelte',
209
215
  },
210
216
  {
211
- description: 'The tool that turns intent inputs into a token set you can see.',
217
+ description: 'Enter your theme inputs and see every token Helix computes from them.',
212
218
  section: 'Tooling',
213
219
  slug: 'theme-builder',
214
220
  title: 'Theme builder',
215
221
  },
216
222
  {
217
- description: 'Deriving an accessible token set from intent inputs.',
223
+ description: 'Compute a complete token set from your brand color and a few other inputs.',
218
224
  section: 'Theming',
219
225
  slug: 'theming',
220
226
  title: 'Deriving a theme',
@@ -227,54 +233,54 @@ export const docPages = [
227
233
  title: 'Tiers',
228
234
  },
229
235
  {
230
- description: 'The two layers, the surface ladder, and what is enforced.',
236
+ description: 'The two token layers, the surface tokens, and the rules the build enforces.',
231
237
  pinned: true,
232
238
  section: 'Theming',
233
239
  slug: 'tokens',
234
240
  title: 'Tokens',
235
241
  },
236
242
  {
237
- description: 'Three families, one scale, and a heading that is a real heading.',
243
+ description: 'The font families, the type scale, and how Helix styles headings and prose.',
238
244
  section: 'Foundations',
239
245
  slug: 'typography',
240
246
  title: 'Typography',
241
247
  },
242
248
  {
243
- description: 'The four things that look like a library bug and are not, and where an agent should read from.',
249
+ description: 'Four mistakes that look like Helix bugs, and the files an agent should read.',
244
250
  parent: 'coding-agents',
245
251
  section: 'Getting started',
246
252
  slug: 'using-helix-with-an-agent',
247
253
  title: 'Using Helix with an agent',
248
254
  },
249
255
  {
250
- description: 'Binding events, registering elements, and the traps in both.',
256
+ description: 'Bind events, register the elements, and import the styles in a React app.',
251
257
  pinned: true,
252
258
  section: 'Essentials',
253
259
  slug: 'using-the-elements',
254
260
  title: 'Using the elements',
255
261
  },
256
262
  {
257
- description: 'What a version number means here, and which packages move together.',
263
+ description: 'What a Helix version number means, and which packages are released together.',
258
264
  order: 6,
259
265
  section: 'Getting started',
260
266
  slug: 'versioning',
261
267
  title: 'Versioning',
262
268
  },
263
269
  {
264
- description: 'Registered words with fixed vocabularies, one escape hatch, and the word that is refused.',
270
+ description: 'The attributes that set how a component looks, the values each one accepts, and what each value draws.',
265
271
  section: 'Theming',
266
272
  slug: 'visual-axes',
267
273
  title: 'Visual axes',
268
274
  },
269
275
  {
270
- description: 'The one compiler setting Vue needs, and why props and events already work.',
276
+ description: 'The compiler setting Vue needs, and how Vue passes props and binds events.',
271
277
  parent: 'installation',
272
278
  section: 'Getting started',
273
279
  slug: 'vue',
274
280
  title: 'Vue',
275
281
  },
276
282
  {
277
- description: 'A page that uses Helix with no build step, and what that costs.',
283
+ description: 'Use the Helix styles on a page with no build step, and why the elements need a bundler for now.',
278
284
  parent: 'installation',
279
285
  section: 'Getting started',
280
286
  slug: 'without-a-bundler',