0.8.0 • Published 24 days ago

@chsk/core v0.8.0

Weekly downloads
-
License
MIT
Repository
github
Last release
24 days ago

@chsk/core

@chsk/core is a data visualization framework for React. It provides tools for customizable, extendable, and dynamic story-telling with data.

Features

The package provides React components that create commonly-used chart elements as scalable vector graphics (svg).

  • Chart and view components provide the basic infrastructure to create svg graphics
  • Axis components draw x- and y- axes
  • Legend components provide support for legends with categorical items, color scales, and size scales
  • Shape components display basic shapes, including rectangles, lines, and paths so that they may be animated
  • Typography components handle text
  • Tooltip components manage tooltips

In addition, @chsk/core sets up infrastructure that allows for customization and extension.

  • Hooks provide a means for custom components to retrieve chart state
  • Interactivity wrappers manage user interactions such as mouse events
  • Milestone infrastructure enables toggling visibility of chart elements to support incremental story-telling
  • Utility functions enable add-ons to re-use code related to chart state, scales, colors, etc.
  • Typescript throughout the code base

Add-ons

While @chsk/core provides infrastructure that is relevant to data visualization in general, support for specific chart types is available through add-on packages.

  • @chsk/annotation provides miscellaneous elements that can be used to enrich base charts, e.g. arrows, labels, symbols, and markers
  • @chsk/band creates charts with one categorical axis and one continuous axis, e.g. bar charts
  • @chsk/matrix supports charts with two categorical axes, e.g. heat maps
  • @chsk/polar supports charts using polar coordinates, e.g. pie charts
  • @chsk/set generates Venn diagrams
  • @chsk/themes provides a collection of objects that change chart look-and-feel
  • @chs/xy creates charts with two continuous axes, e.g. scatter charts

Documentation

See here

Credits

@chsk/core relies on react for managing state and framer-motion for animations. It uses d3 libraries for many visualization-related calculations and lodash for general-purpose data processing.