Strict

TypeScript

Strict mode. Zero any. Full type inference on every prop. Autocomplete IS the documentation.

Full type inference

Pass data={myData} and Chart.ts infers the available keys for x and y props. Autocomplete shows exactly which fields are available. If it compiles, the chart renders correctly.

Strict mode

The entire library is written in TypeScript strict mode with zero any types. Every prop, callback, event handler, and return value is fully typed. No @ts-ignore needed.

Generic components

Chart components are generic over your data type. LineChart<MyData> gives you type-safe access to all fields. Refactor a field name and TypeScript catches every chart that references it.

Flat API

No nested config objects. No builder patterns. Every option is a top-level prop. This makes TypeScript inference work perfectly - you get autocomplete on every prop without digging through nested types.

Related