This is a monorepo managed using lerna.
For more information see the readme for each package:
| Package | Version | README | CHANGELOG |
|---|---|---|---|
| abstract-image | README | CHANGELOG | |
| abstract-chart | README | CHANGELOG | |
| abstract-document | README | CHANGELOG | |
| abstract-3d | README | CHANGELOG | |
| abstract-sheet | README | CHANGELOG |
There is also a package with examples:
For development of the react components, use pnpm storybook to start storybook in development mode.
For the other packages, use pnpm test to test them.
Linting uses oxlint with type-aware rules (pnpm lint). The oxc VS Code extension needs "oxc.typeAware": true and "oxc.configPath": "./oxlint.config.js" (set in .vscode/settings.json) to surface the same type-aware errors live in the editor — nested config auto-discovery doesn't reliably load the JS config file, so the path must be given explicitly.
First update changelog.
The packages are published on npmjs.org. To publish run this command:
pnpm publish-npm
It will build the packages and call lerna publish which will figure out which packages has changed, ask for new versions of them, and then publish them.