Skip to content

@layerchart/webgl: WebGL layer and 3D marks - #985

Open
techniq wants to merge 7 commits into
mainfrom
techniq/3d-primitives
Open

techniq wants to merge 7 commits into
mainfrom
techniq/3d-primitives

Conversation

@techniq

@techniq techniq commented Nov 1, 2026

Copy link
Copy Markdown
Owner

No description provided.

@changeset-bot

changeset-bot Bot commented Nov 1, 2026 •

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: 21056f3

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 2 packages
Name Type
layerchart Minor
@layerchart/webgl Minor

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@techniq techniq changed the title 3d primitives WebGL layer and 3D marks Nov 1, 2026
@techniq techniq changed the title WebGL layer and 3D marks @layerchart/webgl: WebGL layer and 3D marks Nov 1, 2026
@pkg-pr-new

pkg-pr-new Bot commented Nov 1, 2026 •

Copy link
Copy Markdown

Open in StackBlitz

npm i https://pkg.pr.new/techniq/layerchart@985
npm i https://pkg.pr.new/techniq/layerchart/@layerchart/webgl@985

commit: 21056f3

@github-actions

github-actions Bot commented Nov 1, 2026 •

Copy link
Copy Markdown
Contributor
built with Refined Cloudflare Pages Action

⚡ Cloudflare Pages Deployment

Name Status Preview Last Commit
layerchart ✅ Ready (View Log) Visit Preview 21056f3

@github-actions

github-actions Bot commented Nov 1, 2026 •

Copy link
Copy Markdown
Contributor

Bundle Size Analysis

⚠️ Warnings (5 significant size increases)

Item Current New Change
🔴 core-html 228.84 KB
58.56 gz
231.22 KB
59.27 gz
+2.39 KB (+1.0%)
+0.71 gz (+1.2%)
🔴 core 226.25 KB
57.60 gz
228.57 KB
58.31 gz
+2.32 KB (+1.0%)
+0.71 gz (+1.2%)
🔴 core-svg 226.25 KB
57.88 gz
228.57 KB
58.57 gz
+2.32 KB (+1.0%)
+0.70 gz (+1.2%)
🔴 core-geo 228.33 KB
58.56 gz
230.65 KB
59.29 gz
+2.32 KB (+1.0%)
+0.72 gz (+1.2%)
🔴 TransformContext 27.76 KB
6.96 gz
28.05 KB
7.02 gz
+0.29 KB (+1.0%)
+0.06 gz (+0.8%)

Use-Case Scenarios

Core (7 changed)
Scenario Current New Change
🟡 core-canvas 243.89 KB
63.04 gz
246.29 KB
63.78 gz
+2.40 KB (+1.0%)
+0.74 gz (+1.2%)
🟡 core-line 242.34 KB
61.77 gz
244.66 KB
62.46 gz
+2.32 KB (+1.0%)
+0.69 gz (+1.1%)
🟡 core-scatter 235.05 KB
59.61 gz
237.37 KB
60.30 gz
+2.31 KB (+1.0%)
+0.70 gz (+1.2%)
🔴 core-html 228.84 KB
58.56 gz
231.22 KB
59.27 gz
+2.39 KB (+1.0%)
+0.71 gz (+1.2%)
🔴 core-geo 228.33 KB
58.56 gz
230.65 KB
59.29 gz
+2.32 KB (+1.0%)
+0.72 gz (+1.2%)
🔴 core-svg 226.25 KB
57.88 gz
228.57 KB
58.57 gz
+2.32 KB (+1.0%)
+0.70 gz (+1.2%)
🔴 core 226.25 KB
57.60 gz
228.57 KB
58.31 gz
+2.32 KB (+1.0%)
+0.71 gz (+1.2%)
Base (agnostic) (4 changed)
Scenario Current New Change
🟡 base-svg-agnostic 386.61 KB
90.33 gz
388.78 KB
90.93 gz
+2.17 KB (+0.6%)
+0.60 gz (+0.7%)
🟡 base-canvas-agnostic 386.61 KB
90.32 gz
388.78 KB
90.94 gz
+2.17 KB (+0.6%)
+0.62 gz (+0.7%)
🟡 base-html-agnostic 386.61 KB
90.32 gz
388.78 KB
90.94 gz
+2.17 KB (+0.6%)
+0.62 gz (+0.7%)
🟡 base 386.60 KB
90.33 gz
388.78 KB
90.93 gz
+2.17 KB (+0.6%)
+0.60 gz (+0.7%)
Base (layer-specific) (3 changed)
Scenario Current New Change
🟡 base-canvas 373.14 KB
87.44 gz
375.24 KB
88.01 gz
+2.10 KB (+0.6%)
+0.57 gz (+0.7%)
🟡 base-html 365.57 KB
85.13 gz
367.66 KB
85.74 gz
+2.09 KB (+0.6%)
+0.61 gz (+0.7%)
🟡 base-svg 363.02 KB
84.47 gz
365.04 KB
85.05 gz
+2.02 KB (+0.6%)
+0.58 gz (+0.7%)
Cartesian charts (27 changed)
Scenario Current New Change
🟡 PieChart 432.02 KB
100.10 gz
434.19 KB
100.74 gz
+2.17 KB (+0.5%)
+0.64 gz (+0.6%)
🟡 ArcChart 425.03 KB
98.79 gz
427.20 KB
99.43 gz
+2.17 KB (+0.5%)
+0.65 gz (+0.7%)
🟡 LineChart 417.96 KB
97.68 gz
420.13 KB
98.30 gz
+2.17 KB (+0.5%)
+0.63 gz (+0.6%)
🟡 PieChart-canvas 416.56 KB
96.91 gz
418.66 KB
97.53 gz
+2.10 KB (+0.5%)
+0.62 gz (+0.6%)
🟡 AreaChart 410.28 KB
95.37 gz
412.45 KB
96.03 gz
+2.17 KB (+0.5%)
+0.65 gz (+0.7%)
🟡 ArcChart-canvas 410.15 KB
95.61 gz
412.25 KB
96.17 gz
+2.10 KB (+0.5%)
+0.56 gz (+0.6%)
🟡 PieChart-svg 406.61 KB
94.06 gz
408.62 KB
94.65 gz
+2.02 KB (+0.5%)
+0.59 gz (+0.6%)
🟡 line-chart-interactive 406.28 KB
94.70 gz
408.45 KB
95.29 gz
+2.17 KB (+0.5%)
+0.59 gz (+0.6%)
🟡 area-chart 405.59 KB
94.35 gz
407.76 KB
94.95 gz
+2.17 KB (+0.5%)
+0.60 gz (+0.6%)
🟡 pie-chart 400.14 KB
93.31 gz
402.31 KB
93.91 gz
+2.17 KB (+0.5%)
+0.60 gz (+0.6%)
🟡 ArcChart-svg 400.19 KB
92.71 gz
402.21 KB
93.31 gz
+2.02 KB (+0.5%)
+0.61 gz (+0.7%)
🟡 BarChart 398.01 KB
92.68 gz
400.18 KB
93.28 gz
+2.17 KB (+0.5%)
+0.61 gz (+0.7%)
🟡 AreaChart-canvas 396.17 KB
92.42 gz
398.27 KB
93.01 gz
+2.10 KB (+0.5%)
+0.59 gz (+0.6%)
🟡 bar-chart 391.90 KB
91.39 gz
394.08 KB
91.99 gz
+2.18 KB (+0.6%)
+0.60 gz (+0.7%)
🟡 ScatterChart 391.55 KB
91.37 gz
393.72 KB
92.00 gz
+2.17 KB (+0.6%)
+0.63 gz (+0.7%)
🟡 scatter-chart 387.70 KB
90.59 gz
389.87 KB
91.22 gz
+2.17 KB (+0.6%)
+0.64 gz (+0.7%)
🟡 line-chart 387.11 KB
90.36 gz
389.28 KB
90.99 gz
+2.18 KB (+0.6%)
+0.63 gz (+0.7%)
🟡 AreaChart-svg 386.06 KB
89.41 gz
388.08 KB
90.03 gz
+2.02 KB (+0.5%)
+0.62 gz (+0.7%)
🟡 BarChart-canvas 383.59 KB
89.64 gz
385.69 KB
90.23 gz
+2.10 KB (+0.5%)
+0.59 gz (+0.7%)
🟡 LineChart-canvas 380.19 KB
88.98 gz
382.29 KB
89.58 gz
+2.10 KB (+0.6%)
+0.60 gz (+0.7%)
🟡 ScatterChart-canvas 377.35 KB
88.30 gz
379.45 KB
88.90 gz
+2.10 KB (+0.6%)
+0.60 gz (+0.7%)
🟡 BarChart-svg 373.48 KB
86.67 gz
375.50 KB
87.25 gz
+2.02 KB (+0.5%)
+0.58 gz (+0.7%)
🟡 line-chart-canvas 373.16 KB
87.45 gz
375.26 KB
88.02 gz
+2.10 KB (+0.6%)
+0.57 gz (+0.6%)
🟡 LineChart-svg 370.09 KB
86.06 gz
372.11 KB
86.63 gz
+2.02 KB (+0.5%)
+0.57 gz (+0.7%)
🟡 ScatterChart-svg 367.25 KB
85.36 gz
369.26 KB
85.94 gz
+2.02 KB (+0.5%)
+0.58 gz (+0.7%)
🟡 line-chart-html 365.59 KB
85.15 gz
367.68 KB
85.74 gz
+2.09 KB (+0.6%)
+0.59 gz (+0.7%)
🟡 line-chart-svg 363.04 KB
84.47 gz
365.06 KB
85.06 gz
+2.02 KB (+0.6%)
+0.58 gz (+0.7%)
Geo (3 changed)
Scenario Current New Change
🟡 geo-full 461.31 KB
109.69 gz
463.48 KB
110.31 gz
+2.17 KB (+0.5%)
+0.63 gz (+0.6%)
🟡 geo-tiles 408.86 KB
96.00 gz
411.03 KB
96.62 gz
+2.17 KB (+0.5%)
+0.62 gz (+0.7%)
🟡 geo 403.75 KB
94.32 gz
405.92 KB
94.93 gz
+2.17 KB (+0.5%)
+0.61 gz (+0.6%)
Hierarchy (4 changed)
Scenario Current New Change
🟡 hierarchy-tree 397.39 KB
93.28 gz
399.56 KB
93.90 gz
+2.17 KB (+0.5%)
+0.62 gz (+0.7%)
🟡 hierarchy-treemap 394.28 KB
92.49 gz
396.45 KB
93.10 gz
+2.17 KB (+0.5%)
+0.61 gz (+0.7%)
🟡 hierarchy-pack 393.69 KB
92.40 gz
395.86 KB
93.01 gz
+2.17 KB (+0.6%)
+0.61 gz (+0.7%)
🟡 dodge 391.42 KB
91.76 gz
393.59 KB
92.34 gz
+2.17 KB (+0.6%)
+0.58 gz (+0.6%)
Graph / network (4 changed)
Scenario Current New Change
🟡 dagre 456.20 KB
109.24 gz
458.37 KB
109.90 gz
+2.17 KB (+0.5%)
+0.65 gz (+0.6%)
🟡 force 399.81 KB
94.14 gz
401.98 KB
94.75 gz
+2.17 KB (+0.5%)
+0.61 gz (+0.6%)
🟡 sankey 399.59 KB
93.51 gz
401.76 KB
94.13 gz
+2.17 KB (+0.5%)
+0.62 gz (+0.7%)
🟡 chord 396.28 KB
92.56 gz
398.45 KB
93.18 gz
+2.17 KB (+0.5%)
+0.62 gz (+0.7%)
Components (4 changed)
Scenario Current New Change
🟡 Tooltip 157.06 KB
38.44 gz
157.46 KB
38.63 gz
+0.40 KB (+0.3%)
+0.19 gz (+0.5%)
🟡 Layer 121.68 KB
29.64 gz
122.24 KB
29.79 gz
+0.55 KB (+0.5%)
+0.16 gz (+0.5%)
🔴 TransformContext 27.76 KB
6.96 gz
28.05 KB
7.02 gz
+0.29 KB (+1.0%)
+0.06 gz (+0.8%)
🟢 WebGL 3.29 KB
1.43 gz
0.00 KB
0.00 gz
-3.29 KB (-100.0%)
-1.43 gz (-100.0%)
Worst case (1 changed)
Scenario Current New Change
🟡 all 1146.81 KB
272.40 gz
1147.51 KB
272.56 gz
+0.70 KB (+0.1%)
+0.16 gz (+0.1%)

Understanding this report
  • Use-case scenarios measure the bundle cost of common chart configurations (e.g. a line chart with axes)
  • Individual components measure each component imported in isolation
  • Svelte runtime is excluded; sizes reflect layerchart + its dependencies (d3, etc.)
  • When multiple components share dependencies (e.g. d3-scale), the real-world cost is lower than the sum of individual sizes
  • Changes smaller than 10 bytes or 0.1% are considered insignificant

This branch was successfully deployed

1 active deployment
Preview — 21056f3e Deployed Nov 2, 2026 by github-actions[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant