st-core.fscss draws area, line, and spider/radar charts with pure CSS — clip-path: polygon() and custom properties, no SVG path builders, no canvas, no chart runtime on the critical path.
That design has a practical consequence for apps: updating a chart is rewriting CSS variables . Reactive frameworks already do that well. You do not need a JS chart instance, a virtual DOM subtree for every point, or a third-party wrapper’s internal state.
This article covers:
How data maps to CSS variables
Smooth transitions when values stream in
Patterns for Svelte , React , Vue , and plain JS
How dynamic updates work
Linear charts
@st-chart-points(array) writes inverted Y positions on the host :
--st-p1, --st-p2, … --st-pN
Enter fullscreen mode
Exit fullscreen mode
Fill, line, and dots only read those variables.…