@fusion.dev/helix-docs 0.7.1 → 0.8.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.
@@ -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` | 961,770 | 218,408 | 160,100 | Every styled family. |
65
+ | `@fusion.dev/helix` | 969,618 | 221,400 | 162,184 | 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
@@ -76,18 +76,18 @@ is the whole cost of adopting the base layer on its own.
76
76
  | File | Raw | Gzip | Brotli | |
77
77
  |---|---|---|---|---|
78
78
  | `base.css` | 23,145 | 3,556 | 3,065 | The base layer. Recipes for markup Helix does not render, usable with no JavaScript at all. |
79
- | `elements.css` | 7,033 | 1,209 | 1,082 | Hides each element until its definition loads, generated from the tags in `@fusion.dev/helix`. |
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. |
82
82
  | `tokens.css` | 19,989 | 2,460 | 2,044 | The 185 semantic tokens. Nothing paints without this. |
83
83
 
84
84
  ## What the numbers say
85
85
 
86
- **Most of a first component is the runtime under it.** The median styled family is 13,974 bytes gzipped alone and adds 2,403 to a page that already has Helix on it, so 83 percent of the first one is shared and 17 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.
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 93 components. Every family at once is 218,408.
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,400.
89
89
 
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 93 of them, and the check refuses the shape rather than the package name, so the rule follows `sideEffects` wherever it goes.
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
 
92
92
  The headless tier never had the problem, and it is the control: `@fusion.dev/helix-core` is `sideEffects: false`, and a headless family is a median of 16,187 bytes gzipped alone.
93
93
 
@@ -332,6 +332,7 @@ The headless tier plus presentation. This is what `bun add @fusion.dev/helix` gi
332
332
  | `notifications` | 92,539 | 29,630 | 24,493 | 16,186 | 4,067 | 3,165 |
333
333
  | `number-input` | 91,816 | 29,585 | 24,291 | 11,928 | 3,372 | 2,518 |
334
334
  | `option` | 32,142 | 10,562 | 9,308 | 5,961 | 1,790 | 1,236 |
335
+ | `orb` | 33,900 | 12,026 | 10,637 | 7,677 | 3,262 | 2,518 |
335
336
  | `outline` | 35,566 | 11,582 | 10,202 | 8,251 | 2,540 | 1,760 |
336
337
  | `pagination` | 150,008 | 45,108 | 38,107 | 43,689 | 9,548 | 7,716 |
337
338
  | `pin-input` | 40,676 | 12,803 | 11,279 | 8,259 | 2,639 | 1,829 |
@@ -384,9 +385,9 @@ column is what was removed rather than part of what remains.
384
385
  | `@fusion.dev/helix-core` | 679,080 | 115 | 161,519 | `@floating-ui/dom`, `@fusion.dev/helix-icons` |
385
386
  | `@fusion.dev/helix-headless` | 8,396,649 | 422 | 703,895 | `@fusion.dev/helix-core`, `@fusion.dev/helix-icons`, `uqr` |
386
387
  | `@fusion.dev/helix-icons` | 65,943 | 11 | 20,928 | none |
387
- | `@fusion.dev/helix-styles` | 90,338 | 6 | 0 | none |
388
+ | `@fusion.dev/helix-styles` | 90,381 | 6 | 0 | none |
388
389
  | `@fusion.dev/helix-theme` | 461,551 | 8 | 4,699 | none |
389
- | `@fusion.dev/helix` | 9,314,715 | 716 | 278,117 | `@fusion.dev/helix-core`, `@fusion.dev/helix-headless`, `@fusion.dev/helix-styles` |
390
+ | `@fusion.dev/helix` | 9,393,801 | 724 | 300,554 | `@fusion.dev/helix-core`, `@fusion.dev/helix-headless`, `@fusion.dev/helix-styles` |
390
391
 
391
392
  ## Not measured yet
392
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\` | 961,770 | 218,408 | 160,100 | Every styled family. |
1919
+ | \`@fusion.dev/helix\` | 969,618 | 221,400 | 162,184 | 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
@@ -1930,18 +1930,18 @@ is the whole cost of adopting the base layer on its own.
1930
1930
  | File | Raw | Gzip | Brotli | |
1931
1931
  |---|---|---|---|---|
1932
1932
  | \`base.css\` | 23,145 | 3,556 | 3,065 | The base layer. Recipes for markup Helix does not render, usable with no JavaScript at all. |
1933
- | \`elements.css\` | 7,033 | 1,209 | 1,082 | Hides each element until its definition loads, generated from the tags in \`@fusion.dev/helix\`. |
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. |
1936
1936
  | \`tokens.css\` | 19,989 | 2,460 | 2,044 | The 185 semantic tokens. Nothing paints without this. |
1937
1937
 
1938
1938
  ## What the numbers say
1939
1939
 
1940
- **Most of a first component is the runtime under it.** The median styled family is 13,974 bytes gzipped alone and adds 2,403 to a page that already has Helix on it, so 83 percent of the first one is shared and 17 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.
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 93 components. Every family at once is 218,408.
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,400.
1943
1943
 
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 93 of them, and the check refuses the shape rather than the package name, so the rule follows \`sideEffects\` wherever it goes.
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
 
1946
1946
  The headless tier never had the problem, and it is the control: \`@fusion.dev/helix-core\` is \`sideEffects: false\`, and a headless family is a median of 16,187 bytes gzipped alone.
1947
1947
 
@@ -2186,6 +2186,7 @@ The headless tier plus presentation. This is what \`bun add @fusion.dev/helix\`
2186
2186
  | \`notifications\` | 92,539 | 29,630 | 24,493 | 16,186 | 4,067 | 3,165 |
2187
2187
  | \`number-input\` | 91,816 | 29,585 | 24,291 | 11,928 | 3,372 | 2,518 |
2188
2188
  | \`option\` | 32,142 | 10,562 | 9,308 | 5,961 | 1,790 | 1,236 |
2189
+ | \`orb\` | 33,900 | 12,026 | 10,637 | 7,677 | 3,262 | 2,518 |
2189
2190
  | \`outline\` | 35,566 | 11,582 | 10,202 | 8,251 | 2,540 | 1,760 |
2190
2191
  | \`pagination\` | 150,008 | 45,108 | 38,107 | 43,689 | 9,548 | 7,716 |
2191
2192
  | \`pin-input\` | 40,676 | 12,803 | 11,279 | 8,259 | 2,639 | 1,829 |
@@ -2238,9 +2239,9 @@ column is what was removed rather than part of what remains.
2238
2239
  | \`@fusion.dev/helix-core\` | 679,080 | 115 | 161,519 | \`@floating-ui/dom\`, \`@fusion.dev/helix-icons\` |
2239
2240
  | \`@fusion.dev/helix-headless\` | 8,396,649 | 422 | 703,895 | \`@fusion.dev/helix-core\`, \`@fusion.dev/helix-icons\`, \`uqr\` |
2240
2241
  | \`@fusion.dev/helix-icons\` | 65,943 | 11 | 20,928 | none |
2241
- | \`@fusion.dev/helix-styles\` | 90,338 | 6 | 0 | none |
2242
+ | \`@fusion.dev/helix-styles\` | 90,381 | 6 | 0 | none |
2242
2243
  | \`@fusion.dev/helix-theme\` | 461,551 | 8 | 4,699 | none |
2243
- | \`@fusion.dev/helix\` | 9,314,715 | 716 | 278,117 | \`@fusion.dev/helix-core\`, \`@fusion.dev/helix-headless\`, \`@fusion.dev/helix-styles\` |
2244
+ | \`@fusion.dev/helix\` | 9,393,801 | 724 | 300,554 | \`@fusion.dev/helix-core\`, \`@fusion.dev/helix-headless\`, \`@fusion.dev/helix-styles\` |
2244
2245
 
2245
2246
  ## Not measured yet
2246
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.7.1",
4
+ "version": "0.8.0",
5
5
  "license": "MIT",
6
6
  "author": "Ross Sheppard <ross.sheppard@fusion.dev>",
7
7
  "repository": {
@@ -34,7 +34,7 @@
34
34
  },
35
35
  "bugs": "https://github.com/project-fusion/fusion/issues",
36
36
  "devDependencies": {
37
- "@fusion.dev/helix-cem": "0.7.1",
37
+ "@fusion.dev/helix-cem": "0.8.0",
38
38
  "@fusion.dev/scripts": "0.0.0-dev"
39
39
  },
40
40
  "homepage": "https://fusion.dev",