Chart Patterns
Single-colour textures for charts, on a 6px base tile so lines and dots land on whole pixels and stay crisp at any pixel density.
$149 once · every Pro piece
A catalogue of every preset (lines, grids, dashed and dotted, dots, circles, tiles; -sparse doubles the spacing, -dense halves it), drawn as SVG patterns or canvas patterns, each enlarging on hover. Then patterns at work: a hatched area, patterned bars with one hot month, a donut whose slices differ by hatch direction rather than hue, budget rows where solid is spent and stripes are what is left, and textured backgrounds that replace gridlines and fade at every edge.
Install
npx shadcn@latest add @obsyde/chart-patternsNeeds your licence key · Get Pro
Usage
Import it from where the CLI puts it, or copy the files below by hand.
import { ChartPatternsDemo } from '@/components/obsyde/ember/chart-patterns/ChartPatternsDemo';
export function Example() {
return (
<ChartPatternsDemo view="catalogue" />
);
}
Files
What you get with Pro: plain React, TypeScript and CSS, with no dependencies.
ember/chart-patterns/ChartPatternsDemo.tsxcomponentember/chart-patterns/chart-patterns.cssstylesember/viz-kit/viz-kit.csssharedember/viz-kit/Tooltip.tsxsharedember/viz-kit/focus.tssharedember/viz-kit/patterns.tsxsharedember/viz-kit/roll.tssharedember/shared/rolling-number.csssharedember/shared/spring.tssharedember/shared/accent.tssharedember/viz-kit/scale.tssharedember/viz-kit/motion.tssharedember/viz-kit/chart.tsxsharedember/shared/ember.csssharedember/viz-kit/touch.tssharedember/viz-kit/keyboard.tssharedember/viz-kit/size.tssharedember/viz-kit/shape.tssharedember/viz-kit/series.tsxsharedember/viz-kit/Legend.tsxsharedember/viz-kit/Grid.tsxsharedember/viz-kit/demo.tsxsharedember/viz-kit/demo.csssharedember/viz-kit/Axis.tsxshared
API
| Prop | Type | Default |
|---|---|---|
accentAccent | 'ember' | 'volt' | 'arc' | 'ember' |
viewView | 'catalogue' | 'area' | 'bars' | 'donut' | 'remaining' | 'backgrounds' | 'catalogue' |
patternPattern | 'diagonal-up' | 'diagonal-down' | 'diagonal-up-sparse' | 'vertical' | 'vertical-dense' | 'horizontal' | 'crosshatch' | 'grid' | 'grid-dotted' | 'dots' | 'dots-sparse' | 'diagonal-dots-up' | 'circles-dense' | 'circles' | 'blocks' | 'checkerboard-xs' | 'checkerboard-inset' | 'diagonal-up' |
scaleScale | number | 1 |
strokeWidthStroke width | number | 1 |
rendererRenderer | 'svg' | 'canvas' | 'svg' |
seedSeed | number | 6 |