Skip to content

Reduce bundle size: Layer-specific components#848

Merged
techniq merged 37 commits into
nextfrom
primitive-layer-split
Apr 29, 2026
Merged

Reduce bundle size: Layer-specific components#848
techniq merged 37 commits into
nextfrom
primitive-layer-split

Conversation

@techniq
Copy link
Copy Markdown
Owner

@techniq techniq commented Apr 28, 2026

Resolves #555

@changeset-bot
Copy link
Copy Markdown

changeset-bot Bot commented Apr 28, 2026

🦋 Changeset detected

Latest commit: 3a67a8a

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

This PR includes changesets to release 1 package
Name Type
layerchart 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

@pkg-pr-new
Copy link
Copy Markdown

pkg-pr-new Bot commented Apr 28, 2026

Open in StackBlitz

npm i https://pkg.pr.new/layerchart@848

commit: 3a67a8a

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Apr 28, 2026

Bundle Size Analysis

Use-Case Scenarios

Core (7 changed)
Scenario Current New Change
🟢 core 432.62 KB
105.35 gz
194.56 KB
50.93 gz
-238.06 KB (-55.0%)
-54.42 gz (-51.7%)
➡️ core-svg 0.00 KB
0.00 gz
194.57 KB
50.88 gz
+194.57 KB (+100%)
+50.88 gz (+100%)
➡️ core-canvas 0.00 KB
0.00 gz
212.43 KB
56.26 gz
+212.43 KB (+100%)
+56.26 gz (+100%)
➡️ core-html 0.00 KB
0.00 gz
196.46 KB
51.30 gz
+196.46 KB (+100%)
+51.30 gz (+100%)
➡️ core-geo 0.00 KB
0.00 gz
208.75 KB
54.66 gz
+208.75 KB (+100%)
+54.66 gz (+100%)
➡️ core-line 0.00 KB
0.00 gz
215.17 KB
56.18 gz
+215.17 KB (+100%)
+56.18 gz (+100%)
➡️ core-scatter 0.00 KB
0.00 gz
212.22 KB
54.85 gz
+212.22 KB (+100%)
+54.85 gz (+100%)
Base (agnostic) (4 changed)
Scenario Current New Change
➡️ base 0.00 KB
0.00 gz
351.67 KB
82.09 gz
+351.67 KB (+100%)
+82.09 gz (+100%)
➡️ base-svg-agnostic 0.00 KB
0.00 gz
351.67 KB
82.09 gz
+351.67 KB (+100%)
+82.09 gz (+100%)
➡️ base-canvas-agnostic 0.00 KB
0.00 gz
351.67 KB
82.09 gz
+351.67 KB (+100%)
+82.09 gz (+100%)
➡️ base-html-agnostic 0.00 KB
0.00 gz
351.67 KB
82.09 gz
+351.67 KB (+100%)
+82.09 gz (+100%)
Base (layer-specific) (3 changed)
Scenario Current New Change
➡️ base-svg 0.00 KB
0.00 gz
330.26 KB
77.54 gz
+330.26 KB (+100%)
+77.54 gz (+100%)
➡️ base-canvas 0.00 KB
0.00 gz
336.37 KB
79.09 gz
+336.37 KB (+100%)
+79.09 gz (+100%)
➡️ base-html 0.00 KB
0.00 gz
332.15 KB
77.97 gz
+332.15 KB (+100%)
+77.97 gz (+100%)
Cartesian charts (28 changed)
Scenario Current New Change
🟢 line-chart 432.64 KB
105.36 gz
352.15 KB
82.11 gz
-80.49 KB (-18.6%)
-23.25 gz (-22.1%)
➡️ line-chart-svg 0.00 KB
0.00 gz
330.28 KB
77.54 gz
+330.28 KB (+100%)
+77.54 gz (+100%)
➡️ line-chart-canvas 0.00 KB
0.00 gz
336.40 KB
79.10 gz
+336.40 KB (+100%)
+79.10 gz (+100%)
➡️ line-chart-html 0.00 KB
0.00 gz
332.17 KB
77.98 gz
+332.17 KB (+100%)
+77.98 gz (+100%)
🟢 line-chart-interactive 446.87 KB
107.74 gz
366.68 KB
85.42 gz
-80.19 KB (-17.9%)
-22.32 gz (-20.7%)
➡️ LineChart 0.00 KB
0.00 gz
376.05 KB
88.29 gz
+376.05 KB (+100%)
+88.29 gz (+100%)
➡️ LineChart-svg 0.00 KB
0.00 gz
337.28 KB
79.21 gz
+337.28 KB (+100%)
+79.21 gz (+100%)
➡️ LineChart-canvas 0.00 KB
0.00 gz
343.38 KB
80.77 gz
+343.38 KB (+100%)
+80.77 gz (+100%)
🟢 area-chart 456.62 KB
110.96 gz
365.35 KB
85.07 gz
-91.26 KB (-20.0%)
-25.89 gz (-23.3%)
➡️ AreaChart 0.00 KB
0.00 gz
369.65 KB
86.00 gz
+369.65 KB (+100%)
+86.00 gz (+100%)
➡️ AreaChart-svg 0.00 KB
0.00 gz
347.47 KB
81.36 gz
+347.47 KB (+100%)
+81.36 gz (+100%)
➡️ AreaChart-canvas 0.00 KB
0.00 gz
353.58 KB
82.87 gz
+353.58 KB (+100%)
+82.87 gz (+100%)
🟢 bar-chart 441.27 KB
107.40 gz
356.21 KB
82.86 gz
-85.06 KB (-19.3%)
-24.53 gz (-22.8%)
➡️ BarChart 0.00 KB
0.00 gz
362.09 KB
84.09 gz
+362.09 KB (+100%)
+84.09 gz (+100%)
➡️ BarChart-svg 0.00 KB
0.00 gz
339.63 KB
79.40 gz
+339.63 KB (+100%)
+79.40 gz (+100%)
➡️ BarChart-canvas 0.00 KB
0.00 gz
345.72 KB
80.92 gz
+345.72 KB (+100%)
+80.92 gz (+100%)
🟢 scatter-chart 436.77 KB
106.46 gz
352.92 KB
82.53 gz
-83.85 KB (-19.2%)
-23.94 gz (-22.5%)
➡️ ScatterChart 0.00 KB
0.00 gz
356.38 KB
83.20 gz
+356.38 KB (+100%)
+83.20 gz (+100%)
➡️ ScatterChart-svg 0.00 KB
0.00 gz
333.93 KB
78.29 gz
+333.93 KB (+100%)
+78.29 gz (+100%)
➡️ ScatterChart-canvas 0.00 KB
0.00 gz
340.03 KB
79.83 gz
+340.03 KB (+100%)
+79.83 gz (+100%)
🟢 pie-chart 439.50 KB
107.11 gz
364.12 KB
84.73 gz
-75.39 KB (-17.2%)
-22.38 gz (-20.9%)
➡️ PieChart 0.00 KB
0.00 gz
391.05 KB
90.54 gz
+391.05 KB (+100%)
+90.54 gz (+100%)
➡️ PieChart-svg 0.00 KB
0.00 gz
367.48 KB
85.42 gz
+367.48 KB (+100%)
+85.42 gz (+100%)
➡️ PieChart-canvas 0.00 KB
0.00 gz
373.58 KB
86.96 gz
+373.58 KB (+100%)
+86.96 gz (+100%)
➡️ ArcChart 0.00 KB
0.00 gz
384.33 KB
89.38 gz
+384.33 KB (+100%)
+89.38 gz (+100%)
➡️ ArcChart-svg 0.00 KB
0.00 gz
361.30 KB
84.37 gz
+361.30 KB (+100%)
+84.37 gz (+100%)
➡️ ArcChart-canvas 0.00 KB
0.00 gz
367.40 KB
85.96 gz
+367.40 KB (+100%)
+85.96 gz (+100%)
➡️ high-level-charts 527.97 KB
126.96 gz
0.00 KB
0.00 gz
-527.97 KB (-100.0%)
-126.96 gz (-100.0%)
Geo (3 changed)
Scenario Current New Change
🟢 geo 447.22 KB
108.73 gz
368.60 KB
85.92 gz
-78.62 KB (-17.6%)
-22.81 gz (-21.0%)
🟢 geo-tiles 451.56 KB
110.24 gz
373.67 KB
87.54 gz
-77.90 KB (-17.3%)
-22.70 gz (-20.6%)
🟢 geo-full 498.24 KB
123.27 gz
425.89 KB
101.08 gz
-72.35 KB (-14.5%)
-22.19 gz (-18.0%)
Hierarchy (3 changed)
Scenario Current New Change
🟢 hierarchy-tree 458.26 KB
112.14 gz
393.67 KB
92.25 gz
-64.59 KB (-14.1%)
-19.89 gz (-17.7%)
🟢 hierarchy-treemap 438.91 KB
107.32 gz
372.98 KB
87.26 gz
-65.92 KB (-15.0%)
-20.06 gz (-18.7%)
🟢 hierarchy-pack 438.73 KB
107.43 gz
372.71 KB
87.35 gz
-66.03 KB (-15.0%)
-20.09 gz (-18.7%)
Graph / network (4 changed)
Scenario Current New Change
🟢 force 460.65 KB
112.96 gz
396.08 KB
93.11 gz
-64.58 KB (-14.0%)
-19.85 gz (-17.6%)
🟢 dagre 516.74 KB
128.02 gz
452.24 KB
108.25 gz
-64.50 KB (-12.5%)
-19.76 gz (-15.4%)
🟢 sankey 460.32 KB
112.30 gz
395.81 KB
92.50 gz
-64.51 KB (-14.0%)
-19.80 gz (-17.6%)
🟢 chord 441.39 KB
107.48 gz
361.37 KB
84.26 gz
-80.02 KB (-18.1%)
-23.22 gz (-21.6%)
Components (190 changed)
Scenario Current New Change
➡️ Circle 0.00 KB
0.00 gz
67.54 KB
17.07 gz
+67.54 KB (+100%)
+17.07 gz (+100%)
➡️ Circle.svg 0.00 KB
0.00 gz
53.93 KB
13.28 gz
+53.93 KB (+100%)
+13.28 gz (+100%)
➡️ Circle.canvas 0.00 KB
0.00 gz
62.50 KB
15.98 gz
+62.50 KB (+100%)
+15.98 gz (+100%)
➡️ Circle.html 0.00 KB
0.00 gz
54.55 KB
13.42 gz
+54.55 KB (+100%)
+13.42 gz (+100%)
➡️ Text 0.00 KB
0.00 gz
116.94 KB
29.09 gz
+116.94 KB (+100%)
+29.09 gz (+100%)
➡️ Text.svg 0.00 KB
0.00 gz
63.12 KB
16.21 gz
+63.12 KB (+100%)
+16.21 gz (+100%)
➡️ Text.canvas 0.00 KB
0.00 gz
106.82 KB
26.85 gz
+106.82 KB (+100%)
+26.85 gz (+100%)
➡️ Text.html 0.00 KB
0.00 gz
60.94 KB
15.71 gz
+60.94 KB (+100%)
+15.71 gz (+100%)
➡️ Rect 0.00 KB
0.00 gz
74.33 KB
18.56 gz
+74.33 KB (+100%)
+18.56 gz (+100%)
➡️ Rect.svg 0.00 KB
0.00 gz
59.28 KB
14.43 gz
+59.28 KB (+100%)
+14.43 gz (+100%)
➡️ Rect.canvas 0.00 KB
0.00 gz
68.20 KB
17.32 gz
+68.20 KB (+100%)
+17.32 gz (+100%)
➡️ Rect.html 0.00 KB
0.00 gz
58.73 KB
14.38 gz
+58.73 KB (+100%)
+14.38 gz (+100%)
➡️ Line 0.00 KB
0.00 gz
74.19 KB
18.61 gz
+74.19 KB (+100%)
+18.61 gz (+100%)
➡️ Line.svg 0.00 KB
0.00 gz
59.89 KB
14.57 gz
+59.89 KB (+100%)
+14.57 gz (+100%)
➡️ Line.canvas 0.00 KB
0.00 gz
63.11 KB
16.09 gz
+63.11 KB (+100%)
+16.09 gz (+100%)
➡️ Line.html 0.00 KB
0.00 gz
55.83 KB
13.76 gz
+55.83 KB (+100%)
+13.76 gz (+100%)
➡️ Path 0.00 KB
0.00 gz
84.10 KB
21.28 gz
+84.10 KB (+100%)
+21.28 gz (+100%)
➡️ Path.svg 0.00 KB
0.00 gz
73.31 KB
18.34 gz
+73.31 KB (+100%)
+18.34 gz (+100%)
➡️ Path.canvas 0.00 KB
0.00 gz
64.12 KB
16.94 gz
+64.12 KB (+100%)
+16.94 gz (+100%)
➡️ ClipPath 0.00 KB
0.00 gz
7.11 KB
2.06 gz
+7.11 KB (+100%)
+2.06 gz (+100%)
➡️ ClipPath.svg 0.00 KB
0.00 gz
3.99 KB
1.49 gz
+3.99 KB (+100%)
+1.49 gz (+100%)
➡️ ClipPath.canvas 0.00 KB
0.00 gz
3.02 KB
1.22 gz
+3.02 KB (+100%)
+1.22 gz (+100%)
➡️ ClipPath.html 0.00 KB
0.00 gz
3.32 KB
1.31 gz
+3.32 KB (+100%)
+1.31 gz (+100%)
➡️ RadialGradient 0.00 KB
0.00 gz
54.48 KB
14.07 gz
+54.48 KB (+100%)
+14.07 gz (+100%)
➡️ RadialGradient.svg 0.00 KB
0.00 gz
43.50 KB
10.58 gz
+43.50 KB (+100%)
+10.58 gz (+100%)
➡️ RadialGradient.canvas 0.00 KB
0.00 gz
51.39 KB
13.29 gz
+51.39 KB (+100%)
+13.29 gz (+100%)
➡️ LinearGradient 0.00 KB
0.00 gz
55.84 KB
14.37 gz
+55.84 KB (+100%)
+14.37 gz (+100%)
➡️ LinearGradient.svg 0.00 KB
0.00 gz
43.61 KB
10.61 gz
+43.61 KB (+100%)
+10.61 gz (+100%)
➡️ LinearGradient.canvas 0.00 KB
0.00 gz
51.66 KB
13.36 gz
+51.66 KB (+100%)
+13.36 gz (+100%)
➡️ LinearGradient.html 0.00 KB
0.00 gz
0.92 KB
0.53 gz
+0.92 KB (+100%)
+0.53 gz (+100%)
➡️ Group 0.00 KB
0.00 gz
15.34 KB
3.98 gz
+15.34 KB (+100%)
+3.98 gz (+100%)
➡️ Group.svg 0.00 KB
0.00 gz
11.47 KB
3.50 gz
+11.47 KB (+100%)
+3.50 gz (+100%)
➡️ Group.canvas 0.00 KB
0.00 gz
10.20 KB
3.11 gz
+10.20 KB (+100%)
+3.11 gz (+100%)
➡️ Group.html 0.00 KB
0.00 gz
11.60 KB
3.52 gz
+11.60 KB (+100%)
+3.52 gz (+100%)
➡️ Pattern 0.00 KB
0.00 gz
57.51 KB
14.80 gz
+57.51 KB (+100%)
+14.80 gz (+100%)
➡️ Pattern.svg 0.00 KB
0.00 gz
45.07 KB
10.92 gz
+45.07 KB (+100%)
+10.92 gz (+100%)
➡️ Pattern.canvas 0.00 KB
0.00 gz
52.26 KB
13.49 gz
+52.26 KB (+100%)
+13.49 gz (+100%)
➡️ Pattern.html 0.00 KB
0.00 gz
2.23 KB
0.92 gz
+2.23 KB (+100%)
+0.92 gz (+100%)
➡️ Ellipse 0.00 KB
0.00 gz
67.66 KB
16.98 gz
+67.66 KB (+100%)
+16.98 gz (+100%)
➡️ Ellipse.svg 0.00 KB
0.00 gz
54.08 KB
13.20 gz
+54.08 KB (+100%)
+13.20 gz (+100%)
➡️ Ellipse.canvas 0.00 KB
0.00 gz
62.60 KB
15.88 gz
+62.60 KB (+100%)
+15.88 gz (+100%)
➡️ Ellipse.html 0.00 KB
0.00 gz
54.28 KB
13.23 gz
+54.28 KB (+100%)
+13.23 gz (+100%)
➡️ Polygon 0.00 KB
0.00 gz
75.68 KB
19.82 gz
+75.68 KB (+100%)
+19.82 gz (+100%)
➡️ Polygon.svg 0.00 KB
0.00 gz
64.68 KB
16.68 gz
+64.68 KB (+100%)
+16.68 gz (+100%)
➡️ Polygon.canvas 0.00 KB
0.00 gz
73.28 KB
19.33 gz
+73.28 KB (+100%)
+19.33 gz (+100%)
➡️ Image 0.00 KB
0.00 gz
61.16 KB
14.90 gz
+61.16 KB (+100%)
+14.90 gz (+100%)
➡️ Image.svg 0.00 KB
0.00 gz
55.42 KB
13.77 gz
+55.42 KB (+100%)
+13.77 gz (+100%)
➡️ Image.canvas 0.00 KB
0.00 gz
12.79 KB
3.74 gz
+12.79 KB (+100%)
+3.74 gz (+100%)
➡️ Image.html 0.00 KB
0.00 gz
54.34 KB
13.42 gz
+54.34 KB (+100%)
+13.42 gz (+100%)
➡️ Axis 0.00 KB
0.00 gz
193.62 KB
43.14 gz
+193.62 KB (+100%)
+43.14 gz (+100%)
➡️ Axis.svg 0.00 KB
0.00 gz
167.09 KB
37.70 gz
+167.09 KB (+100%)
+37.70 gz (+100%)
➡️ Axis.canvas 0.00 KB
0.00 gz
163.00 KB
37.09 gz
+163.00 KB (+100%)
+37.09 gz (+100%)
➡️ Axis.html 0.00 KB
0.00 gz
161.69 KB
36.63 gz
+161.69 KB (+100%)
+36.63 gz (+100%)
➡️ Rule 0.00 KB
0.00 gz
101.42 KB
23.33 gz
+101.42 KB (+100%)
+23.33 gz (+100%)
➡️ Rule.svg 0.00 KB
0.00 gz
79.15 KB
18.11 gz
+79.15 KB (+100%)
+18.11 gz (+100%)
➡️ Rule.canvas 0.00 KB
0.00 gz
80.93 KB
19.07 gz
+80.93 KB (+100%)
+19.07 gz (+100%)
➡️ Rule.html 0.00 KB
0.00 gz
75.86 KB
17.51 gz
+75.86 KB (+100%)
+17.51 gz (+100%)
➡️ Grid 0.00 KB
0.00 gz
52.04 KB
9.29 gz
+52.04 KB (+100%)
+9.29 gz (+100%)
➡️ Grid.svg 0.00 KB
0.00 gz
99.45 KB
21.92 gz
+99.45 KB (+100%)
+21.92 gz (+100%)
➡️ Grid.canvas 0.00 KB
0.00 gz
38.68 KB
6.83 gz
+38.68 KB (+100%)
+6.83 gz (+100%)
➡️ Grid.html 0.00 KB
0.00 gz
96.13 KB
21.35 gz
+96.13 KB (+100%)
+21.35 gz (+100%)
➡️ Highlight 0.00 KB
0.00 gz
44.73 KB
8.39 gz
+44.73 KB (+100%)
+8.39 gz (+100%)
➡️ Highlight.svg 0.00 KB
0.00 gz
34.73 KB
6.62 gz
+34.73 KB (+100%)
+6.62 gz (+100%)
➡️ Highlight.canvas 0.00 KB
0.00 gz
32.09 KB
6.07 gz
+32.09 KB (+100%)
+6.07 gz (+100%)
➡️ Highlight.html 0.00 KB
0.00 gz
33.89 KB
6.65 gz
+33.89 KB (+100%)
+6.65 gz (+100%)
➡️ RectClipPath 0.00 KB
0.00 gz
8.59 KB
2.33 gz
+8.59 KB (+100%)
+2.33 gz (+100%)
➡️ RectClipPath.svg 0.00 KB
0.00 gz
5.13 KB
1.76 gz
+5.13 KB (+100%)
+1.76 gz (+100%)
➡️ RectClipPath.canvas 0.00 KB
0.00 gz
4.16 KB
1.49 gz
+4.16 KB (+100%)
+1.49 gz (+100%)
➡️ RectClipPath.html 0.00 KB
0.00 gz
4.46 KB
1.56 gz
+4.46 KB (+100%)
+1.56 gz (+100%)
➡️ ChartClipPath 0.00 KB
0.00 gz
51.19 KB
12.13 gz
+51.19 KB (+100%)
+12.13 gz (+100%)
➡️ ChartClipPath.svg 0.00 KB
0.00 gz
47.36 KB
11.57 gz
+47.36 KB (+100%)
+11.57 gz (+100%)
➡️ ChartClipPath.canvas 0.00 KB
0.00 gz
46.38 KB
11.32 gz
+46.38 KB (+100%)
+11.32 gz (+100%)
➡️ ChartClipPath.html 0.00 KB
0.00 gz
46.68 KB
11.36 gz
+46.68 KB (+100%)
+11.36 gz (+100%)
➡️ Arc 0.00 KB
0.00 gz
132.08 KB
35.39 gz
+132.08 KB (+100%)
+35.39 gz (+100%)
➡️ Arc.svg 0.00 KB
0.00 gz
121.26 KB
32.32 gz
+121.26 KB (+100%)
+32.32 gz (+100%)
➡️ Arc.canvas 0.00 KB
0.00 gz
112.08 KB
31.11 gz
+112.08 KB (+100%)
+31.11 gz (+100%)
➡️ Spline 0.00 KB
0.00 gz
106.26 KB
27.12 gz
+106.26 KB (+100%)
+27.12 gz (+100%)
➡️ Spline.svg 0.00 KB
0.00 gz
95.44 KB
24.14 gz
+95.44 KB (+100%)
+24.14 gz (+100%)
➡️ Spline.canvas 0.00 KB
0.00 gz
87.42 KB
22.90 gz
+87.42 KB (+100%)
+22.90 gz (+100%)
➡️ Area 0.00 KB
0.00 gz
117.18 KB
28.92 gz
+117.18 KB (+100%)
+28.92 gz (+100%)
➡️ Area.svg 0.00 KB
0.00 gz
106.14 KB
25.88 gz
+106.14 KB (+100%)
+25.88 gz (+100%)
➡️ Area.canvas 0.00 KB
0.00 gz
98.13 KB
24.71 gz
+98.13 KB (+100%)
+24.71 gz (+100%)
➡️ Pie 0.00 KB
0.00 gz
137.32 KB
36.43 gz
+137.32 KB (+100%)
+36.43 gz (+100%)
➡️ Pie.svg 0.00 KB
0.00 gz
126.34 KB
33.35 gz
+126.34 KB (+100%)
+33.35 gz (+100%)
➡️ Pie.canvas 0.00 KB
0.00 gz
117.16 KB
32.15 gz
+117.16 KB (+100%)
+32.15 gz (+100%)
➡️ ArcLabel 0.00 KB
0.00 gz
146.72 KB
35.86 gz
+146.72 KB (+100%)
+35.86 gz (+100%)
➡️ ArcLabel.svg 0.00 KB
0.00 gz
135.91 KB
33.16 gz
+135.91 KB (+100%)
+33.16 gz (+100%)
➡️ ArcLabel.canvas 0.00 KB
0.00 gz
123.46 KB
31.30 gz
+123.46 KB (+100%)
+31.30 gz (+100%)
➡️ Bar 0.00 KB
0.00 gz
163.83 KB
41.34 gz
+163.83 KB (+100%)
+41.34 gz (+100%)
➡️ Bar.svg 0.00 KB
0.00 gz
146.92 KB
37.53 gz
+146.92 KB (+100%)
+37.53 gz (+100%)
➡️ Bar.canvas 0.00 KB
0.00 gz
140.68 KB
37.01 gz
+140.68 KB (+100%)
+37.01 gz (+100%)
➡️ Bars 0.00 KB
0.00 gz
167.82 KB
41.99 gz
+167.82 KB (+100%)
+41.99 gz (+100%)
➡️ Bars.svg 0.00 KB
0.00 gz
150.46 KB
38.13 gz
+150.46 KB (+100%)
+38.13 gz (+100%)
➡️ Bars.canvas 0.00 KB
0.00 gz
148.03 KB
38.26 gz
+148.03 KB (+100%)
+38.26 gz (+100%)
➡️ Points 0.00 KB
0.00 gz
73.61 KB
18.32 gz
+73.61 KB (+100%)
+18.32 gz (+100%)
➡️ Points.svg 0.00 KB
0.00 gz
59.66 KB
14.62 gz
+59.66 KB (+100%)
+14.62 gz (+100%)
➡️ Points.canvas 0.00 KB
0.00 gz
68.23 KB
17.33 gz
+68.23 KB (+100%)
+17.33 gz (+100%)
➡️ Points.html 0.00 KB
0.00 gz
60.28 KB
14.71 gz
+60.28 KB (+100%)
+14.71 gz (+100%)
➡️ Labels 0.00 KB
0.00 gz
152.75 KB
35.45 gz
+152.75 KB (+100%)
+35.45 gz (+100%)
➡️ Labels.svg 0.00 KB
0.00 gz
131.50 KB
31.19 gz
+131.50 KB (+100%)
+31.19 gz (+100%)
➡️ Labels.canvas 0.00 KB
0.00 gz
132.88 KB
31.83 gz
+132.88 KB (+100%)
+31.83 gz (+100%)
➡️ Labels.html 0.00 KB
0.00 gz
130.09 KB
30.80 gz
+130.09 KB (+100%)
+30.80 gz (+100%)
➡️ Frame 0.00 KB
0.00 gz
76.09 KB
18.91 gz
+76.09 KB (+100%)
+18.91 gz (+100%)
➡️ Frame.svg 0.00 KB
0.00 gz
60.84 KB
14.78 gz
+60.84 KB (+100%)
+14.78 gz (+100%)
➡️ Frame.canvas 0.00 KB
0.00 gz
69.76 KB
17.70 gz
+69.76 KB (+100%)
+17.70 gz (+100%)
➡️ Frame.html 0.00 KB
0.00 gz
60.29 KB
14.76 gz
+60.29 KB (+100%)
+14.76 gz (+100%)
➡️ Cell 0.00 KB
0.00 gz
95.47 KB
21.41 gz
+95.47 KB (+100%)
+21.41 gz (+100%)
➡️ Cell.svg 0.00 KB
0.00 gz
72.60 KB
16.77 gz
+72.60 KB (+100%)
+16.77 gz (+100%)
➡️ Cell.canvas 0.00 KB
0.00 gz
80.06 KB
19.13 gz
+80.06 KB (+100%)
+19.13 gz (+100%)
➡️ Cell.html 0.00 KB
0.00 gz
72.80 KB
16.65 gz
+72.80 KB (+100%)
+16.65 gz (+100%)
➡️ Threshold 0.00 KB
0.00 gz
123.60 KB
30.08 gz
+123.60 KB (+100%)
+30.08 gz (+100%)
➡️ Threshold.svg 0.00 KB
0.00 gz
111.18 KB
26.83 gz
+111.18 KB (+100%)
+26.83 gz (+100%)
➡️ Threshold.canvas 0.00 KB
0.00 gz
102.23 KB
25.52 gz
+102.23 KB (+100%)
+25.52 gz (+100%)
➡️ AnnotationLine 0.00 KB
0.00 gz
138.41 KB
33.21 gz
+138.41 KB (+100%)
+33.21 gz (+100%)
➡️ AnnotationLine.svg 0.00 KB
0.00 gz
120.02 KB
28.96 gz
+120.02 KB (+100%)
+28.96 gz (+100%)
➡️ AnnotationLine.canvas 0.00 KB
0.00 gz
117.35 KB
28.83 gz
+117.35 KB (+100%)
+28.83 gz (+100%)
➡️ AnnotationPoint 0.00 KB
0.00 gz
182.94 KB
43.58 gz
+182.94 KB (+100%)
+43.58 gz (+100%)
➡️ AnnotationPoint.svg 0.00 KB
0.00 gz
163.73 KB
39.43 gz
+163.73 KB (+100%)
+39.43 gz (+100%)
➡️ AnnotationPoint.canvas 0.00 KB
0.00 gz
151.10 KB
37.45 gz
+151.10 KB (+100%)
+37.45 gz (+100%)
➡️ Trail 0.00 KB
0.00 gz
93.50 KB
23.95 gz
+93.50 KB (+100%)
+23.95 gz (+100%)
➡️ Trail.svg 0.00 KB
0.00 gz
82.68 KB
20.98 gz
+82.68 KB (+100%)
+20.98 gz (+100%)
➡️ Trail.canvas 0.00 KB
0.00 gz
74.92 KB
19.95 gz
+74.92 KB (+100%)
+19.95 gz (+100%)
➡️ Vector 0.00 KB
0.00 gz
93.03 KB
23.42 gz
+93.03 KB (+100%)
+23.42 gz (+100%)
➡️ Vector.svg 0.00 KB
0.00 gz
82.22 KB
20.44 gz
+82.22 KB (+100%)
+20.44 gz (+100%)
➡️ Vector.canvas 0.00 KB
0.00 gz
75.81 KB
19.89 gz
+75.81 KB (+100%)
+19.89 gz (+100%)
➡️ Link 0.00 KB
0.00 gz
107.19 KB
26.94 gz
+107.19 KB (+100%)
+26.94 gz (+100%)
➡️ Link.svg 0.00 KB
0.00 gz
96.23 KB
23.93 gz
+96.23 KB (+100%)
+23.93 gz (+100%)
➡️ Link.canvas 0.00 KB
0.00 gz
87.98 KB
22.81 gz
+87.98 KB (+100%)
+22.81 gz (+100%)
➡️ AnnotationRange 0.00 KB
0.00 gz
151.42 KB
35.80 gz
+151.42 KB (+100%)
+35.80 gz (+100%)
➡️ AnnotationRange.svg 0.00 KB
0.00 gz
126.71 KB
30.35 gz
+126.71 KB (+100%)
+30.35 gz (+100%)
➡️ AnnotationRange.canvas 0.00 KB
0.00 gz
127.22 KB
30.98 gz
+127.22 KB (+100%)
+30.98 gz (+100%)
➡️ Hull 0.00 KB
0.00 gz
176.92 KB
46.81 gz
+176.92 KB (+100%)
+46.81 gz (+100%)
➡️ Hull.svg 0.00 KB
0.00 gz
176.16 KB
46.98 gz
+176.16 KB (+100%)
+46.98 gz (+100%)
➡️ Hull.canvas 0.00 KB
0.00 gz
176.16 KB
46.74 gz
+176.16 KB (+100%)
+46.74 gz (+100%)
➡️ Density 0.00 KB
0.00 gz
130.46 KB
35.54 gz
+130.46 KB (+100%)
+35.54 gz (+100%)
➡️ Density.svg 0.00 KB
0.00 gz
119.60 KB
32.56 gz
+119.60 KB (+100%)
+32.56 gz (+100%)
➡️ Density.canvas 0.00 KB
0.00 gz
117.00 KB
32.78 gz
+117.00 KB (+100%)
+32.78 gz (+100%)
➡️ Calendar 0.00 KB
0.00 gz
169.64 KB
40.02 gz
+169.64 KB (+100%)
+40.02 gz (+100%)
➡️ Calendar.svg 0.00 KB
0.00 gz
156.05 KB
37.78 gz
+156.05 KB (+100%)
+37.78 gz (+100%)
➡️ Calendar.canvas 0.00 KB
0.00 gz
153.77 KB
37.02 gz
+153.77 KB (+100%)
+37.02 gz (+100%)
➡️ CircleClipPath 0.00 KB
0.00 gz
8.37 KB
2.25 gz
+8.37 KB (+100%)
+2.25 gz (+100%)
➡️ CircleClipPath.svg 0.00 KB
0.00 gz
4.91 KB
1.70 gz
+4.91 KB (+100%)
+1.70 gz (+100%)
➡️ CircleClipPath.canvas 0.00 KB
0.00 gz
3.94 KB
1.42 gz
+3.94 KB (+100%)
+1.42 gz (+100%)
➡️ CircleClipPath.html 0.00 KB
0.00 gz
4.24 KB
1.50 gz
+4.24 KB (+100%)
+1.50 gz (+100%)
➡️ Voronoi 0.00 KB
0.00 gz
173.37 KB
45.52 gz
+173.37 KB (+100%)
+45.52 gz (+100%)
➡️ Voronoi.svg 0.00 KB
0.00 gz
171.40 KB
45.43 gz
+171.40 KB (+100%)
+45.43 gz (+100%)
➡️ Voronoi.canvas 0.00 KB
0.00 gz
170.42 KB
44.98 gz
+170.42 KB (+100%)
+44.98 gz (+100%)
➡️ Contour 0.00 KB
0.00 gz
161.38 KB
44.01 gz
+161.38 KB (+100%)
+44.01 gz (+100%)
➡️ Contour.svg 0.00 KB
0.00 gz
150.52 KB
41.01 gz
+150.52 KB (+100%)
+41.01 gz (+100%)
➡️ Contour.canvas 0.00 KB
0.00 gz
147.92 KB
41.26 gz
+147.92 KB (+100%)
+41.26 gz (+100%)
➡️ Month 0.00 KB
0.00 gz
150.51 KB
35.10 gz
+150.51 KB (+100%)
+35.10 gz (+100%)
➡️ Month.svg 0.00 KB
0.00 gz
128.29 KB
30.54 gz
+128.29 KB (+100%)
+30.54 gz (+100%)
➡️ Month.canvas 0.00 KB
0.00 gz
130.03 KB
31.42 gz
+130.03 KB (+100%)
+31.42 gz (+100%)
➡️ Raster 0.00 KB
0.00 gz
121.96 KB
33.02 gz
+121.96 KB (+100%)
+33.02 gz (+100%)
➡️ Raster.svg 0.00 KB
0.00 gz
116.01 KB
32.07 gz
+116.01 KB (+100%)
+32.07 gz (+100%)
➡️ Raster.canvas 0.00 KB
0.00 gz
114.18 KB
31.55 gz
+114.18 KB (+100%)
+31.55 gz (+100%)
➡️ Raster.html 0.00 KB
0.00 gz
114.93 KB
31.75 gz
+114.93 KB (+100%)
+31.75 gz (+100%)
➡️ Violin 0.00 KB
0.00 gz
131.02 KB
30.44 gz
+131.02 KB (+100%)
+30.44 gz (+100%)
➡️ Violin.svg 0.00 KB
0.00 gz
115.14 KB
26.58 gz
+115.14 KB (+100%)
+26.58 gz (+100%)
➡️ Violin.canvas 0.00 KB
0.00 gz
110.24 KB
26.53 gz
+110.24 KB (+100%)
+26.53 gz (+100%)
➡️ BoxPlot 0.00 KB
0.00 gz
119.73 KB
24.99 gz
+119.73 KB (+100%)
+24.99 gz (+100%)
➡️ BoxPlot.svg 0.00 KB
0.00 gz
102.67 KB
21.01 gz
+102.67 KB (+100%)
+21.01 gz (+100%)
➡️ BoxPlot.canvas 0.00 KB
0.00 gz
104.60 KB
21.91 gz
+104.60 KB (+100%)
+21.91 gz (+100%)
➡️ GeoPath 0.00 KB
0.00 gz
98.35 KB
25.36 gz
+98.35 KB (+100%)
+25.36 gz (+100%)
➡️ GeoPath.svg 0.00 KB
0.00 gz
87.54 KB
22.32 gz
+87.54 KB (+100%)
+22.32 gz (+100%)
➡️ GeoPath.canvas 0.00 KB
0.00 gz
78.43 KB
20.83 gz
+78.43 KB (+100%)
+20.83 gz (+100%)
➡️ GeoSpline 0.00 KB
0.00 gz
115.77 KB
30.83 gz
+115.77 KB (+100%)
+30.83 gz (+100%)
➡️ GeoSpline.svg 0.00 KB
0.00 gz
104.95 KB
27.82 gz
+104.95 KB (+100%)
+27.82 gz (+100%)
➡️ GeoSpline.canvas 0.00 KB
0.00 gz
95.86 KB
26.43 gz
+95.86 KB (+100%)
+26.43 gz (+100%)
➡️ GeoPoint 0.00 KB
0.00 gz
75.03 KB
18.44 gz
+75.03 KB (+100%)
+18.44 gz (+100%)
➡️ GeoPoint.svg 0.00 KB
0.00 gz
63.04 KB
15.04 gz
+63.04 KB (+100%)
+15.04 gz (+100%)
➡️ GeoPoint.canvas 0.00 KB
0.00 gz
70.35 KB
17.40 gz
+70.35 KB (+100%)
+17.40 gz (+100%)
➡️ GeoCircle 0.00 KB
0.00 gz
102.33 KB
26.50 gz
+102.33 KB (+100%)
+26.50 gz (+100%)
➡️ GeoCircle.svg 0.00 KB
0.00 gz
91.33 KB
23.40 gz
+91.33 KB (+100%)
+23.40 gz (+100%)
➡️ GeoCircle.canvas 0.00 KB
0.00 gz
82.22 KB
21.91 gz
+82.22 KB (+100%)
+21.91 gz (+100%)
➡️ GeoTile 0.00 KB
0.00 gz
128.11 KB
31.64 gz
+128.11 KB (+100%)
+31.64 gz (+100%)
➡️ GeoTile.svg 0.00 KB
0.00 gz
117.76 KB
28.82 gz
+117.76 KB (+100%)
+28.82 gz (+100%)
➡️ GeoTile.canvas 0.00 KB
0.00 gz
119.32 KB
29.71 gz
+119.32 KB (+100%)
+29.71 gz (+100%)
➡️ TileImage 0.00 KB
0.00 gz
116.45 KB
29.23 gz
+116.45 KB (+100%)
+29.23 gz (+100%)
➡️ TileImage.svg 0.00 KB
0.00 gz
107.12 KB
26.60 gz
+107.12 KB (+100%)
+26.60 gz (+100%)
➡️ TileImage.canvas 0.00 KB
0.00 gz
109.94 KB
27.77 gz
+109.94 KB (+100%)
+27.77 gz (+100%)
➡️ Graticule 0.00 KB
0.00 gz
103.51 KB
26.52 gz
+103.51 KB (+100%)
+26.52 gz (+100%)
➡️ Graticule.svg 0.00 KB
0.00 gz
92.46 KB
23.44 gz
+92.46 KB (+100%)
+23.44 gz (+100%)
➡️ Graticule.canvas 0.00 KB
0.00 gz
89.86 KB
23.60 gz
+89.86 KB (+100%)
+23.60 gz (+100%)
➡️ GeoClipPath 0.00 KB
0.00 gz
14.68 KB
4.29 gz
+14.68 KB (+100%)
+4.29 gz (+100%)
➡️ GeoClipPath.svg 0.00 KB
0.00 gz
12.90 KB
4.00 gz
+12.90 KB (+100%)
+4.00 gz (+100%)
➡️ GeoClipPath.canvas 0.00 KB
0.00 gz
11.89 KB
3.72 gz
+11.89 KB (+100%)
+3.72 gz (+100%)
➡️ GeoEdgeFade 0.00 KB
0.00 gz
84.10 KB
23.23 gz
+84.10 KB (+100%)
+23.23 gz (+100%)
➡️ GeoEdgeFade.svg 0.00 KB
0.00 gz
82.61 KB
22.78 gz
+82.61 KB (+100%)
+22.78 gz (+100%)
➡️ GeoEdgeFade.canvas 0.00 KB
0.00 gz
81.34 KB
22.54 gz
+81.34 KB (+100%)
+22.54 gz (+100%)
Worst case (1 changed)
Scenario Current New Change
🔴 all 964.01 KB
238.25 gz
990.58 KB
231.07 gz
+26.57 KB (+2.8%)
-7.17 gz (-3.0%)
Foundation (1 changed)
Scenario Current New Change
➡️ canvas 432.62 KB
105.35 gz
0.00 KB
0.00 gz
-432.62 KB (-100.0%)
-105.35 gz (-100.0%)

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

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Apr 28, 2026

built with Refined Cloudflare Pages Action

⚡ Cloudflare Pages Deployment

Name Status Preview Last Commit
layerchart ✅ Ready (View Log) Visit Preview 3a67a8a

techniq added 2 commits April 28, 2026 10:46
…lias Layer based on layer type (Layer within layerchart/svg => Svg)
Co-authored-by: Copilot <copilot@github.com>
The static-mode render guard required both `x` and `y` to be explicit, so
`<Text y={-6}>` inside a positioned `<Group>` (e.g. tooltip labels in the
GeoPoint world-capitals example) was skipped on the Svg layer — Canvas
worked because it doesn't gate on coordinate validity.

Change `&&` to `||` so Text renders when either coordinate is set; the
missing one falls through to the existing `motionX`/`motionY` default of 0,
matching SVG's natural "missing coord = 0" behavior and the Canvas variant.
@techniq techniq merged commit 2c21908 into next Apr 29, 2026
9 checks passed
@techniq techniq deleted the primitive-layer-split branch April 29, 2026 18:28
@github-actions github-actions Bot mentioned this pull request Apr 29, 2026
@github-actions github-actions Bot mentioned this pull request May 1, 2026
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