@fusion.dev/helix-docs 0.8.0 → 0.9.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/metrics.mdx +11 -11
- package/dist/sources.generated.js +11 -11
- package/package.json +3 -2
package/content/metrics.mdx
CHANGED
|
@@ -62,7 +62,7 @@ repository does that. The per-component tables are what a page pays.
|
|
|
62
62
|
| `@fusion.dev/helix-headless` | 523,719 | 133,055 | 104,253 | Every headless family, which is what the barrel means. |
|
|
63
63
|
| `@fusion.dev/helix-icons` | 47,484 | 14,907 | 12,553 | The whole glyph set. |
|
|
64
64
|
| `@fusion.dev/helix-theme` | 3,288 | 1,571 | 1,355 | The derivation engine. Build time for most consumers, runtime for a theme switcher. |
|
|
65
|
-
| `@fusion.dev/helix` | 969,
|
|
65
|
+
| `@fusion.dev/helix` | 969,566 | 221,384 | 162,258 | Every styled family. |
|
|
66
66
|
| `lit` | 15,394 | 6,118 | 5,460 | Not ours. Here so it can be subtracted from every row above it. |
|
|
67
67
|
|
|
68
68
|
## The stylesheets
|
|
@@ -75,7 +75,7 @@ is the whole cost of adopting the base layer on its own.
|
|
|
75
75
|
|
|
76
76
|
| File | Raw | Gzip | Brotli | |
|
|
77
77
|
|---|---|---|---|---|
|
|
78
|
-
| `base.css` | 23,
|
|
78
|
+
| `base.css` | 23,077 | 3,548 | 3,058 | The base layer. Recipes for markup Helix does not render, usable with no JavaScript at all. |
|
|
79
79
|
| `elements.css` | 7,076 | 1,217 | 1,094 | Hides each element until its definition loads, generated from the tags in `@fusion.dev/helix`. |
|
|
80
80
|
| `helix.css` | 207 | 148 | 118 | The four above in one import, in the order they have to be in. |
|
|
81
81
|
| `primitives.css` | 6,275 | 1,234 | 1,062 | The primitive layer. Private, shipped because `tokens.css` resolves into it. |
|
|
@@ -85,7 +85,7 @@ is the whole cost of adopting the base layer on its own.
|
|
|
85
85
|
|
|
86
86
|
**Most of a first component is the runtime under it.** The median styled family is 13,914 bytes gzipped alone and adds 2,450 to a page that already has Helix on it, so 82 percent of the first one is shared and 18 percent is the component. Ten typical components are one plus nine additions rather than ten of the first number, and the pair of columns below is what lets that be worked out rather than guessed.
|
|
87
87
|
|
|
88
|
-
Across the tier: the cheapest is `code` at 9,065 gzipped alone, the dearest `data-table` at 51,725, over 94 components. Every family at once is 221,
|
|
88
|
+
Across the tier: the cheapest is `code` at 9,065 gzipped alone, the dearest `data-table` at 51,725, over 94 components. Every family at once is 221,384.
|
|
89
89
|
|
|
90
90
|
**No family imports a barrel, and the `barrels` rule in `fusion workspace` is what keeps it that way.** `@fusion.dev/helix-headless` is `sideEffects` over every module in `dist`, which is true of a file that calls `customElements.define` and which means a bundler may drop none of it: one `import { HelixHeadlessButton } from '@fusion.dev/helix-headless'` costs 133,055 bytes gzipped whatever else the page does, which is 10 times the median family measured above. The styled tier imports the family it extends instead, all 94 of them, and the check refuses the shape rather than the package name, so the rule follows `sideEffects` wherever it goes.
|
|
91
91
|
|
|
@@ -101,7 +101,7 @@ Four other libraries of custom elements, pinned and measured on 2026-08-24 by `t
|
|
|
101
101
|
|
|
102
102
|
| Component | System | Raw | Gzip | Brotli |
|
|
103
103
|
|---|---|---|---|---|
|
|
104
|
-
| `button` | **Helix** | 37,
|
|
104
|
+
| `button` | **Helix** | 37,347 | 11,529 | 10,175 |
|
|
105
105
|
| | Carbon | 133,058 | 20,959 | 17,685 |
|
|
106
106
|
| | Material Web | 47,060 | 14,173 | 12,591 |
|
|
107
107
|
| | Shoelace | 62,628 | 18,287 | 15,805 |
|
|
@@ -286,7 +286,7 @@ The headless tier plus presentation. This is what `bun add @fusion.dev/helix` gi
|
|
|
286
286
|
| `bar-chart` | 87,351 | 27,296 | 24,053 | 28,056 | 6,997 | 5,438 |
|
|
287
287
|
| `blockquote` | 28,015 | 9,529 | 8,383 | 2,077 | 727 | 391 |
|
|
288
288
|
| `breadcrumbs` | 78,416 | 25,590 | 21,198 | 5,334 | 1,435 | 997 |
|
|
289
|
-
| `button` | 37,
|
|
289
|
+
| `button` | 37,347 | 11,529 | 10,175 | 9,184 | 2,203 | 1,636 |
|
|
290
290
|
| `button-group` | 28,508 | 9,547 | 8,419 | 2,320 | 713 | 411 |
|
|
291
291
|
| `callout` | 76,172 | 25,232 | 20,980 | 2,913 | 999 | 686 |
|
|
292
292
|
| `card` | 30,099 | 10,015 | 8,818 | 3,915 | 1,176 | 844 |
|
|
@@ -296,8 +296,8 @@ The headless tier plus presentation. This is what `bun add @fusion.dev/helix` gi
|
|
|
296
296
|
| `checkbox-group` | 39,793 | 12,366 | 10,895 | 6,888 | 2,183 | 1,429 |
|
|
297
297
|
| `code` | 26,546 | 9,065 | 7,981 | 1,529 | 528 | 264 |
|
|
298
298
|
| `code-block` | 126,792 | 40,099 | 33,850 | 25,869 | 5,728 | 4,471 |
|
|
299
|
-
| `color-input` | 162,
|
|
300
|
-
| `color-picker` | 126,
|
|
299
|
+
| `color-input` | 162,793 | 47,369 | 40,118 | 57,570 | 11,958 | 9,992 |
|
|
300
|
+
| `color-picker` | 126,632 | 36,596 | 30,485 | 45,720 | 9,886 | 8,246 |
|
|
301
301
|
| `combobox` | 140,973 | 43,542 | 36,718 | 33,950 | 7,936 | 6,297 |
|
|
302
302
|
| `command` | 111,005 | 34,045 | 28,055 | 27,637 | 6,894 | 5,413 |
|
|
303
303
|
| `copy-button` | 122,914 | 39,510 | 33,293 | 21,993 | 5,137 | 3,964 |
|
|
@@ -351,7 +351,7 @@ The headless tier plus presentation. This is what `bun add @fusion.dev/helix` gi
|
|
|
351
351
|
| `speed-dial` | 110,306 | 36,505 | 30,879 | 11,251 | 2,711 | 1,908 |
|
|
352
352
|
| `splitter` | 42,441 | 12,678 | 11,269 | 16,259 | 3,927 | 3,167 |
|
|
353
353
|
| `stat` | 29,954 | 9,789 | 8,646 | 3,774 | 1,005 | 663 |
|
|
354
|
-
| `steps` | 96,
|
|
354
|
+
| `steps` | 96,198 | 29,562 | 24,364 | 19,589 | 4,197 | 3,315 |
|
|
355
355
|
| `switch` | 38,602 | 12,159 | 10,741 | 6,071 | 1,874 | 1,314 |
|
|
356
356
|
| `table` | 35,190 | 10,865 | 9,580 | 7,692 | 1,916 | 1,280 |
|
|
357
357
|
| `tabs` | 40,196 | 12,348 | 10,882 | 10,719 | 2,586 | 1,866 |
|
|
@@ -365,7 +365,7 @@ The headless tier plus presentation. This is what `bun add @fusion.dev/helix` gi
|
|
|
365
365
|
| `toggle` | 43,242 | 13,258 | 11,703 | 8,953 | 2,496 | 1,820 |
|
|
366
366
|
| `toolbar` | 29,632 | 10,054 | 8,841 | 3,813 | 1,474 | 902 |
|
|
367
367
|
| `tooltip` | 60,498 | 20,576 | 18,184 | 9,763 | 2,932 | 2,000 |
|
|
368
|
-
| `tour` | 71,
|
|
368
|
+
| `tour` | 71,770 | 22,532 | 19,965 | 20,075 | 4,577 | 3,584 |
|
|
369
369
|
| `tree` | 89,446 | 29,019 | 23,862 | 12,065 | 3,535 | 2,606 |
|
|
370
370
|
| `trend` | 76,798 | 25,221 | 20,897 | 4,083 | 1,159 | 824 |
|
|
371
371
|
| `video` | 150,914 | 45,853 | 38,970 | 48,454 | 10,806 | 9,092 |
|
|
@@ -385,9 +385,9 @@ column is what was removed rather than part of what remains.
|
|
|
385
385
|
| `@fusion.dev/helix-core` | 679,080 | 115 | 161,519 | `@floating-ui/dom`, `@fusion.dev/helix-icons` |
|
|
386
386
|
| `@fusion.dev/helix-headless` | 8,396,649 | 422 | 703,895 | `@fusion.dev/helix-core`, `@fusion.dev/helix-icons`, `uqr` |
|
|
387
387
|
| `@fusion.dev/helix-icons` | 65,943 | 11 | 20,928 | none |
|
|
388
|
-
| `@fusion.dev/helix-styles` | 90,
|
|
388
|
+
| `@fusion.dev/helix-styles` | 90,313 | 6 | 0 | none |
|
|
389
389
|
| `@fusion.dev/helix-theme` | 461,551 | 8 | 4,699 | none |
|
|
390
|
-
| `@fusion.dev/helix` | 9,
|
|
390
|
+
| `@fusion.dev/helix` | 9,389,209 | 724 | 300,529 | `@fusion.dev/helix-core`, `@fusion.dev/helix-headless`, `@fusion.dev/helix-styles` |
|
|
391
391
|
|
|
392
392
|
## Not measured yet
|
|
393
393
|
|
|
@@ -1916,7 +1916,7 @@ repository does that. The per-component tables are what a page pays.
|
|
|
1916
1916
|
| \`@fusion.dev/helix-headless\` | 523,719 | 133,055 | 104,253 | Every headless family, which is what the barrel means. |
|
|
1917
1917
|
| \`@fusion.dev/helix-icons\` | 47,484 | 14,907 | 12,553 | The whole glyph set. |
|
|
1918
1918
|
| \`@fusion.dev/helix-theme\` | 3,288 | 1,571 | 1,355 | The derivation engine. Build time for most consumers, runtime for a theme switcher. |
|
|
1919
|
-
| \`@fusion.dev/helix\` | 969,
|
|
1919
|
+
| \`@fusion.dev/helix\` | 969,566 | 221,384 | 162,258 | Every styled family. |
|
|
1920
1920
|
| \`lit\` | 15,394 | 6,118 | 5,460 | Not ours. Here so it can be subtracted from every row above it. |
|
|
1921
1921
|
|
|
1922
1922
|
## The stylesheets
|
|
@@ -1929,7 +1929,7 @@ is the whole cost of adopting the base layer on its own.
|
|
|
1929
1929
|
|
|
1930
1930
|
| File | Raw | Gzip | Brotli | |
|
|
1931
1931
|
|---|---|---|---|---|
|
|
1932
|
-
| \`base.css\` | 23,
|
|
1932
|
+
| \`base.css\` | 23,077 | 3,548 | 3,058 | The base layer. Recipes for markup Helix does not render, usable with no JavaScript at all. |
|
|
1933
1933
|
| \`elements.css\` | 7,076 | 1,217 | 1,094 | Hides each element until its definition loads, generated from the tags in \`@fusion.dev/helix\`. |
|
|
1934
1934
|
| \`helix.css\` | 207 | 148 | 118 | The four above in one import, in the order they have to be in. |
|
|
1935
1935
|
| \`primitives.css\` | 6,275 | 1,234 | 1,062 | The primitive layer. Private, shipped because \`tokens.css\` resolves into it. |
|
|
@@ -1939,7 +1939,7 @@ is the whole cost of adopting the base layer on its own.
|
|
|
1939
1939
|
|
|
1940
1940
|
**Most of a first component is the runtime under it.** The median styled family is 13,914 bytes gzipped alone and adds 2,450 to a page that already has Helix on it, so 82 percent of the first one is shared and 18 percent is the component. Ten typical components are one plus nine additions rather than ten of the first number, and the pair of columns below is what lets that be worked out rather than guessed.
|
|
1941
1941
|
|
|
1942
|
-
Across the tier: the cheapest is \`code\` at 9,065 gzipped alone, the dearest \`data-table\` at 51,725, over 94 components. Every family at once is 221,
|
|
1942
|
+
Across the tier: the cheapest is \`code\` at 9,065 gzipped alone, the dearest \`data-table\` at 51,725, over 94 components. Every family at once is 221,384.
|
|
1943
1943
|
|
|
1944
1944
|
**No family imports a barrel, and the \`barrels\` rule in \`fusion workspace\` is what keeps it that way.** \`@fusion.dev/helix-headless\` is \`sideEffects\` over every module in \`dist\`, which is true of a file that calls \`customElements.define\` and which means a bundler may drop none of it: one \`import { HelixHeadlessButton } from '@fusion.dev/helix-headless'\` costs 133,055 bytes gzipped whatever else the page does, which is 10 times the median family measured above. The styled tier imports the family it extends instead, all 94 of them, and the check refuses the shape rather than the package name, so the rule follows \`sideEffects\` wherever it goes.
|
|
1945
1945
|
|
|
@@ -1955,7 +1955,7 @@ Four other libraries of custom elements, pinned and measured on 2026-08-24 by \`
|
|
|
1955
1955
|
|
|
1956
1956
|
| Component | System | Raw | Gzip | Brotli |
|
|
1957
1957
|
|---|---|---|---|---|
|
|
1958
|
-
| \`button\` | **Helix** | 37,
|
|
1958
|
+
| \`button\` | **Helix** | 37,347 | 11,529 | 10,175 |
|
|
1959
1959
|
| | Carbon | 133,058 | 20,959 | 17,685 |
|
|
1960
1960
|
| | Material Web | 47,060 | 14,173 | 12,591 |
|
|
1961
1961
|
| | Shoelace | 62,628 | 18,287 | 15,805 |
|
|
@@ -2140,7 +2140,7 @@ The headless tier plus presentation. This is what \`bun add @fusion.dev/helix\`
|
|
|
2140
2140
|
| \`bar-chart\` | 87,351 | 27,296 | 24,053 | 28,056 | 6,997 | 5,438 |
|
|
2141
2141
|
| \`blockquote\` | 28,015 | 9,529 | 8,383 | 2,077 | 727 | 391 |
|
|
2142
2142
|
| \`breadcrumbs\` | 78,416 | 25,590 | 21,198 | 5,334 | 1,435 | 997 |
|
|
2143
|
-
| \`button\` | 37,
|
|
2143
|
+
| \`button\` | 37,347 | 11,529 | 10,175 | 9,184 | 2,203 | 1,636 |
|
|
2144
2144
|
| \`button-group\` | 28,508 | 9,547 | 8,419 | 2,320 | 713 | 411 |
|
|
2145
2145
|
| \`callout\` | 76,172 | 25,232 | 20,980 | 2,913 | 999 | 686 |
|
|
2146
2146
|
| \`card\` | 30,099 | 10,015 | 8,818 | 3,915 | 1,176 | 844 |
|
|
@@ -2150,8 +2150,8 @@ The headless tier plus presentation. This is what \`bun add @fusion.dev/helix\`
|
|
|
2150
2150
|
| \`checkbox-group\` | 39,793 | 12,366 | 10,895 | 6,888 | 2,183 | 1,429 |
|
|
2151
2151
|
| \`code\` | 26,546 | 9,065 | 7,981 | 1,529 | 528 | 264 |
|
|
2152
2152
|
| \`code-block\` | 126,792 | 40,099 | 33,850 | 25,869 | 5,728 | 4,471 |
|
|
2153
|
-
| \`color-input\` | 162,
|
|
2154
|
-
| \`color-picker\` | 126,
|
|
2153
|
+
| \`color-input\` | 162,793 | 47,369 | 40,118 | 57,570 | 11,958 | 9,992 |
|
|
2154
|
+
| \`color-picker\` | 126,632 | 36,596 | 30,485 | 45,720 | 9,886 | 8,246 |
|
|
2155
2155
|
| \`combobox\` | 140,973 | 43,542 | 36,718 | 33,950 | 7,936 | 6,297 |
|
|
2156
2156
|
| \`command\` | 111,005 | 34,045 | 28,055 | 27,637 | 6,894 | 5,413 |
|
|
2157
2157
|
| \`copy-button\` | 122,914 | 39,510 | 33,293 | 21,993 | 5,137 | 3,964 |
|
|
@@ -2205,7 +2205,7 @@ The headless tier plus presentation. This is what \`bun add @fusion.dev/helix\`
|
|
|
2205
2205
|
| \`speed-dial\` | 110,306 | 36,505 | 30,879 | 11,251 | 2,711 | 1,908 |
|
|
2206
2206
|
| \`splitter\` | 42,441 | 12,678 | 11,269 | 16,259 | 3,927 | 3,167 |
|
|
2207
2207
|
| \`stat\` | 29,954 | 9,789 | 8,646 | 3,774 | 1,005 | 663 |
|
|
2208
|
-
| \`steps\` | 96,
|
|
2208
|
+
| \`steps\` | 96,198 | 29,562 | 24,364 | 19,589 | 4,197 | 3,315 |
|
|
2209
2209
|
| \`switch\` | 38,602 | 12,159 | 10,741 | 6,071 | 1,874 | 1,314 |
|
|
2210
2210
|
| \`table\` | 35,190 | 10,865 | 9,580 | 7,692 | 1,916 | 1,280 |
|
|
2211
2211
|
| \`tabs\` | 40,196 | 12,348 | 10,882 | 10,719 | 2,586 | 1,866 |
|
|
@@ -2219,7 +2219,7 @@ The headless tier plus presentation. This is what \`bun add @fusion.dev/helix\`
|
|
|
2219
2219
|
| \`toggle\` | 43,242 | 13,258 | 11,703 | 8,953 | 2,496 | 1,820 |
|
|
2220
2220
|
| \`toolbar\` | 29,632 | 10,054 | 8,841 | 3,813 | 1,474 | 902 |
|
|
2221
2221
|
| \`tooltip\` | 60,498 | 20,576 | 18,184 | 9,763 | 2,932 | 2,000 |
|
|
2222
|
-
| \`tour\` | 71,
|
|
2222
|
+
| \`tour\` | 71,770 | 22,532 | 19,965 | 20,075 | 4,577 | 3,584 |
|
|
2223
2223
|
| \`tree\` | 89,446 | 29,019 | 23,862 | 12,065 | 3,535 | 2,606 |
|
|
2224
2224
|
| \`trend\` | 76,798 | 25,221 | 20,897 | 4,083 | 1,159 | 824 |
|
|
2225
2225
|
| \`video\` | 150,914 | 45,853 | 38,970 | 48,454 | 10,806 | 9,092 |
|
|
@@ -2239,9 +2239,9 @@ column is what was removed rather than part of what remains.
|
|
|
2239
2239
|
| \`@fusion.dev/helix-core\` | 679,080 | 115 | 161,519 | \`@floating-ui/dom\`, \`@fusion.dev/helix-icons\` |
|
|
2240
2240
|
| \`@fusion.dev/helix-headless\` | 8,396,649 | 422 | 703,895 | \`@fusion.dev/helix-core\`, \`@fusion.dev/helix-icons\`, \`uqr\` |
|
|
2241
2241
|
| \`@fusion.dev/helix-icons\` | 65,943 | 11 | 20,928 | none |
|
|
2242
|
-
| \`@fusion.dev/helix-styles\` | 90,
|
|
2242
|
+
| \`@fusion.dev/helix-styles\` | 90,313 | 6 | 0 | none |
|
|
2243
2243
|
| \`@fusion.dev/helix-theme\` | 461,551 | 8 | 4,699 | none |
|
|
2244
|
-
| \`@fusion.dev/helix\` | 9,
|
|
2244
|
+
| \`@fusion.dev/helix\` | 9,389,209 | 724 | 300,529 | \`@fusion.dev/helix-core\`, \`@fusion.dev/helix-headless\`, \`@fusion.dev/helix-styles\` |
|
|
2245
2245
|
|
|
2246
2246
|
## Not measured yet
|
|
2247
2247
|
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fusion.dev/helix-docs",
|
|
3
3
|
"description": "Versioned documentation content and registry for Helix.",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.9.0",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Ross Sheppard <ross.sheppard@fusion.dev>",
|
|
7
7
|
"repository": {
|
|
@@ -27,6 +27,7 @@
|
|
|
27
27
|
"scripts": {
|
|
28
28
|
"build": "tsc -p tsconfig.build.json && tsc -p tsconfig.types.json",
|
|
29
29
|
"docs": "bun scripts/build-docs.mjs",
|
|
30
|
+
"metrics": "build-metrics",
|
|
30
31
|
"peers": "bun scripts/build-peers.mjs",
|
|
31
32
|
"test": "bun test src",
|
|
32
33
|
"timings": "bun scripts/build-timings.mjs",
|
|
@@ -34,7 +35,7 @@
|
|
|
34
35
|
},
|
|
35
36
|
"bugs": "https://github.com/project-fusion/fusion/issues",
|
|
36
37
|
"devDependencies": {
|
|
37
|
-
"@fusion.dev/helix-cem": "0.
|
|
38
|
+
"@fusion.dev/helix-cem": "0.9.0",
|
|
38
39
|
"@fusion.dev/scripts": "0.0.0-dev"
|
|
39
40
|
},
|
|
40
41
|
"homepage": "https://fusion.dev",
|