finds.dev← search

// the find

f5/unovis

★ 2,790 · TypeScript · Apache-2.0 · updated Jun 2026

Modular data visualization framework for React, Angular, Svelte, Vue, and vanilla TypeScript or JavaScript

Unovis is a data visualization library built on D3 with a framework-agnostic core in TypeScript and thin wrappers for React, Angular, Svelte, Vue, and Solid. It covers standard chart types plus network graphs, Sankey diagrams, chord diagrams, and maps (both TopoJSON and Leaflet). Aimed at teams who want one charting library across multiple frameworks without rewriting everything.

Tree-shakable architecture with a shared `@unovis/ts` core means you're not shipping five separate D3 bundles; the framework packages are genuinely thin wrappers, not forks. The component catalog is unusually broad — chord diagrams, Sankey, nested donuts, and Leaflet flow maps are things most charting libs either skip or bolt on poorly. CSS variable support for theming is done at the right level — you override variables, not inline styles or class names. Active maintenance from F5 with recent commits means this isn't an abandoned side project.

67 forks and 2790 stars after what appears to be several years suggests it hasn't broken through against Recharts or Victory in the React ecosystem — community support and third-party examples will be thin. The Angular package still ships NgModule-based components rather than standalone components, which is behind the current Angular idiom. No virtualization story for large datasets — rendering 50,000 scatter points will hurt. The D3 underpinning is both strength and weakness: customization beyond the prop API means dropping into D3 internals, which breaks the abstraction and creates upgrade risk.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →