Skip to content
Back to skills

Reaviz

ASecurity

Use when building charts or data visualizations in React with the reaviz library (AreaChart, BarChart, LineChart, PieChart, ScatterPlot, Heatmap, Sankey, RadarChart, etc.). Covers composable chart architecture, data shapes, axes, gridlines, tooltips, color schemes, and animation.

  • 4 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added May 27, 2026
data-aigobashreactapi

Works with

  • api

Security analysis

A96/100
  • mediumInstalls packages at runtime which could introduce malicious dependencies

Pro scans all 20 files and shows the line behind each finding

Scanned May 27, 2026

npx -y skills add reaviz/skills --skill reaviz --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Reaviz?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Reaviz
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/reaviz-reaviz/badge)](https://www.skillsdirectory.com/skills/reaviz-reaviz)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: reaviz
description: Use when building charts or data visualizations in React with the reaviz library (AreaChart, BarChart, LineChart, PieChart, ScatterPlot, Heatmap, Sankey, RadarChart, etc.). Covers composable chart architecture, data shapes, axes, gridlines, tooltips, color schemes, and animation.
---

# Reaviz

Reaviz is a React data visualization library built on **D3.js** and **Framer Motion**. It provides composable, animated chart components with a declarative JSX API.

## Installation

```bash
npm install reaviz
```

## Core Concepts

### Composable Chart Architecture

Every chart follows the same pattern: a top-level chart component wraps axis, series, gridline, and interaction sub-components. Sub-components are passed as JSX element props, making each layer independently configurable:

```tsx
import { AreaChart, AreaSeries, LinearXAxis, LinearYAxis, GridlineSeries } from 'reaviz';

<AreaChart
  data={data}
  xAxis={<LinearXAxis type="time" />}
  yAxis={<LinearYAxis type="value" />}
  series={<AreaSeries interpolation="smooth" />}
  gridlines={<GridlineSeries />}
/>
```

### Data Shapes

**Single series** — `ChartDataShape[]`:
```ts
{ key: Date | string | number, data: number }
```

**Multi / nested series** — `ChartNestedDataShape[]`:
```ts
{ key: Date | string | number, data: { key: string, data: number }[] }
```

### Common Chart Props

All chart components share these base props:

| Prop | Type | Default | Description |
|------|------|---------|-------------|
| `data` | `ChartDataShape[]` | `[]` | Chart data |
| `width` | `number` | auto | Width in pixels |
| `height` | `number` | auto | Height in pixels |
| `margins` | `Margins` | — | Chart margins `{ top, right, bottom, left }` |
| `className` | `string` | — | CSS class for the SVG element |
| `containerClassName` | `string` | — | CSS class for the container div |

### Shared Infrastructure

| Module | Description |
|--------|-------------|
| **LinearXAxis / LinearYAxis** | Configurable axes with tick formatting, types (`time`, `value`, `category`, `duration`) |
| **GridlineSeries** | Background gridlines and stripes |
| **Gradient / GradientStop** | SVG gradient fills for areas and bars |
| **Mask / Stripes** | SVG pattern masks |
| **TooltipArea / ChartTooltip** | Hover tooltips with customizable templates |
| **ChartBrush** | Range selection brush for filtering |
| **ChartZoomPan** | Zoom and pan interaction |
| **LinearValueMarker** | Horizontal/vertical reference lines at specific values |
| **MarkLine** | Crosshair mark line on hover |

### Color Schemes

Pass a built-in scheme name or a custom function to `colorScheme`:

```tsx
// Built-in
<AreaSeries colorScheme="cybertron" />

// Custom function
<AreaSeries colorScheme={(_data, index) => index % 2 ? 'blue' : 'green'} />
```

### Interpolation Types

Applies to area and line charts:

`'linear'` | `'smooth'` | `'step'` | `'monotone'` | `'natural'` | `'basis'` | `'cardinal'`

### Animation

All series components accept `animated: boolean` (default `true`). Framer Motion handles enter, update, and exit transitions.

## Chart Index

### Cartesian Charts
AreaChart, BarChart, LineChart, ScatterPlot, BubbleChart, Heatmap, FunnelChart, BarList, Sparkline

### Radial Charts
RadialAreaChart, RadialBarChart, RadialGauge, RadialScatterPlot, RadarChart, PieChart, SunburstChart

### Other
Sankey, VennDiagram, TreeMap, LinearGauge, Meter, Map, WordCloud

## Common Patterns

- **Import from barrel**: Always `import { Component } from 'reaviz'`
- **Auto-sizing**: Omit `width` / `height` and the chart fills its container
- **Customizing sub-components**: Override defaults by passing a configured JSX element (e.g. `series={<AreaSeries interpolation="smooth" />}`)
- **Disabling features**: Pass `null` to remove a sub-component (e.g. `gridlines={null}`)

Files in this skill

  • SKILL.md3.8 KB
  • charts/SKILL.md1.9 KB
  • charts/area-chart/SKILL.md7.4 KB
  • charts/bar-chart/SKILL.md9.4 KB
  • charts/bar-list/SKILL.md3.7 KB
  • charts/bubble-chart/SKILL.md3.6 KB
  • charts/funnel-chart/SKILL.md4.8 KB
  • charts/gauge/SKILL.md6.7 KB
  • charts/heatmap/SKILL.md5 KB
  • charts/line-chart/SKILL.md5.1 KB
  • charts/map/SKILL.md2.5 KB
  • charts/meter/SKILL.md1.8 KB
  • charts/pie-chart/SKILL.md5.5 KB
  • charts/radar-chart/SKILL.md6 KB
  • charts/sankey/SKILL.md6.5 KB
  • charts/scatter-plot/SKILL.md5.3 KB
  • charts/sparkline/SKILL.md4.4 KB
  • charts/sunburst-chart/SKILL.md3.8 KB
  • charts/tree-map/SKILL.md4.1 KB
  • charts/venn-diagram/SKILL.md5.9 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.