https://user-images.githubusercontent.com/755708/205744216-5e9efd10-794b-4ce1-9aca-580c34fad193.mp4 🟨 **Unovis** is a modular data visualization framework for React, Angular, Svelte, Vue, Solid and vanilla TypeScript or JavaScript: * πŸ“ˆ πŸ—Ί It has charts, maps, network graphs, and more! * 🌳 Tree-shakable and supports individual component imports to reduce your bundle size; * 🎨 Highly customizable, thanks to the CSS-variables support. Learn more about _Unovis_ on [unovis.dev](https://unovis.dev) ## Quick Start You can install the core of the library `@unovis/ts` and framework-specific packages (if you use React, Angular, Svelte, Vue or Solid) from NPM: ```bash npm install -P @unovis/ts @unovis/ ``` Now you can import components and create your first chart! Here's how to build a simple line chart uising Unovis and React: ```tsx import React, { useCallback } from 'react' import { VisXYContainer, VisLine, VisAxis } from '@unovis/react' type DataRecord = { x: number; y: number } const data: DataRecord[] = [ { x: 0, y: 0 }, { x: 1, y: 2 }, { x: 2, y: 1 }, ] export function BasicLineChart (): JSX.Element { return ( x={useCallback(d => d.x, [])} y={useCallback(d => d.y, [])} > ) } ``` Looking for Angular, Svelte, Vue, Solid or TypeScript examples? Check out the [Quick Start](https://unovis.dev/docs/quick-start) page on our website. ## Examples and Documentation [![Unovis Examples](examples.png)](https://unovis.dev/gallery) πŸ“– _Unovis_ has an extensive [documentation](https://unovis.dev/docs/intro) with code snippets for React, Angular, Svelte and TypeScript. πŸ–Ό Also there's a growing [gallery](https://unovis.dev/gallery) of examples, from where you can copy the code over to your project or try it live on StackBlitz. ## Repository structure License | Package | Description | Version | Downloads | |---------|-------------|---------|-----------| | [`@unovis/ts`](packages/ts) | Core TypeScript package | Version | Downloads | | [`@unovis/react`](packages/react) | React components | Version | Downloads | | [`@unovis/angular`](packages/angular) | Angular components | Version | Downloads | | [`@unovis/svelte`](packages/svelte) | Svelte components | Version | Downloads | | [`@unovis/vue`](packages/vue) | Vue components | Version | Downloads | | [`@unovis/solid`](packages/solid) | Solid components | Version | Downloads | | [`@unovis/ssr`](packages/ssr) | Server-side rendering: charts to SVG/PNG in Node | Version | Downloads | | [`@unovis/mcp`](packages/mcp) | MCP server generating charts as SVG | Version | Downloads | | [`packages/website`](packages/website) | Website, docs and examples | β€” | β€” | ## Contributing Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change. For more information, please read [CONTRIBUTING](CONTRIBUTING.md). ## Maintainers [Nikita Rokotyan](https://github.com/rokotyan) [Qian Liu](https://github.com/lee00678) [Surya Hanumandla](https://github.com/suryahanumandla) ## Contributors [Rebecca Bol](https://github.com/reb-dev) [Olga Stukova](https://github.com/stukova) [Sumit Kumar](https://github.com/sumitkumar25) [Gaurav Mukherjee](https://github.com/gmfun) [Beverly Ackah](https://github.com/beverlyckh) [Dmitriy Gutman](https://github.com/DimamoN) [zernonia](https://github.com/zernonia) [Yann むーベス Eves](https://github.com/yanneves) [Michael](https://github.com/TasoOneAsia) [Josh Larsen](https://github.com/joshlarsen) ## License _Unovis_ is licensed under Apache-2.0