Beautiful charts.
Zero config.
<15kb gzipped
Smaller than a hero image. Your Lighthouse score stays green.
SVG-first
Real DOM elements. CSS, devtools, screen readers - all work.
className=
Tailwind on every chart element. Dark mode in one class.
MIT forever
Candlestick, waterfall, gauge - 65+ chart types. Free. Commercial use included.
WCAG AA
Keyboard nav, screen readers, pattern fills. Accessible by architecture.
Every framework
React, Vue, Svelte, Solid, Angular, Vanilla. Native packages. Same API.
Monthly Revenue
$48,200+24.3%
Why Chart.ts
Everything you need.
Nothing you don't.
<15kb gzipped
Smaller than most hero images. Your Lighthouse score stays green. Your users stay happy.
SVG-first
Real DOM elements. Inspect in devtools. Style with CSS. Accessible to screen readers. Crisp at every zoom.
Multi-renderer
SVG by default. Auto-switches to Canvas at 10k+ points, WebGL at 100k+. Zero configuration.
Beautiful defaults
Looks stunning out of the box. Smooth gradients, clean type, elegant animations. No config needed.
Tailwind native
className prop on every element. dark: variants. Your design tokens, your CSS. Charts that match your app.
Every framework
Native packages for React, Vue, Svelte, Solid, Angular, and Vanilla JS. Same API. Learn once, use anywhere.
TypeScript-first
Strict mode, zero any. Full type inference on every prop. Autocomplete IS the documentation.
Accessible
WCAG 2.1 AA by default. Keyboard nav, screen readers, pattern fills. Accessible by architecture, not afterthought.
Beyond the basics
Enterprise power.
Startup simplicity.
65+
Chart types
13
WebGL/3D charts
25
npm packages
100+
Theme presets
5
Frameworks
<15kb
Gzipped
AA
WCAG accessible
MIT
Free forever
65+ chart types
Sankey, treemap, sunburst, chord, parallel coordinates, network graphs, geo maps, 3D scatter, 3D surface, globe. All built in.
GPU accelerated
@chartts/gl renders 100k+ data points at 60fps via WebGL. 13 3D chart types: Bar3D, Scatter3D, Surface3D, Globe3D, Map3D.
Real-time streaming
createStreamingChart() with rolling buffers and pause/resume. @chartts/websocket for WebSocket, SSE, and HTTP polling.
Financial indicators
@chartts/finance: SMA, EMA, RSI, MACD, Bollinger Bands, ATR, VWAP, Sharpe ratio. Pure math, zero dependencies.
Plugin system
defineChartType() creates fully custom chart types with render context, hit testing, and custom scales. Not locked in.
Zoom, pan, brush
Built-in interaction system. Zoom into ranges, pan across data, brush to select regions, crosshair for precision. linkCharts() for sync.
Bundle size
The entire library. Not per chart. Total.
48 chart types, every renderer, full TypeScript, tree-shakeable. Smaller than most hero images.
Get started
Five lines of code.
That's it.
import { LineChart } from '@chartts/react'
const data = [4, 8, 2, 12, 6, 14, 9]
<LineChart
data={data}
className="h-64 text-cyan-500"
smooth
/>65+ chart types
Every chart you need.
Built in. Not bolted on.
From simple line charts to sankey diagrams, 3D globe visualizations, financial candlesticks, and network graphs. Plus 13 WebGL/3D chart types via @chartts/gl.
Line
Bar
Area
Pie
Donut
Scatter
Bubble
Radar
Candlestick
Waterfall
Funnel
Gauge
Sparkline
Stacked Bar
Horizontal Bar
Heatmap
Box Plot
Histogram
Treemap
Polar
Radial Bar
Lollipop
Bullet
Dumbbell
Calendar
Combo
Sankey
Sunburst
Tree
Graph / Network
Parallel Coordinates
Chord
Geo Map
Word Cloud
Violin Plot
Voronoi
Theme River
Pictorial Bar
Matrix
Frameworks
Native everywhere.
Not wrappers. Native packages.
Same API surface across every framework. Learn once, use anywhere.
Chart API
Charts from a URL.
Embed beautiful charts in emails, Slack, markdown, Notion - anywhere images work. No JavaScript required.
https://i.chartts.com/line/4,8,2,12,6,14,9?title=Revenue&color=cyanWorks with any LLM, email client, or markdown renderer. Any tool that can display an image can display a chart.
Get started in 30 seconds.
Install. Import. Render. That's it.
npm install @chartts/react