This is a collection of basic layout algorithms. We provide the following packages to support different runtime environments:
- @antv/layout Implemented with TypeScript. Online Demo
- @antv/layout-rust Implemented with Rust.
- @antv/layout-wasm Provide a WASM binding of
@antv/layout-rust
. Online Demo - @antv/layout-gpu Accelerate some parallelizable algorithms such as Fruchterman with WebGPU which has a better performance under large amount of data.
Online benchmarks: https://antv.vision/layout/index.html
We use Vite to start a dev server:
$ pnpm dev
$ pnpm test
Using Changesets with pnpm: https://pnpm.io/next/using-changesets
The generated markdown files in the .changeset directory should be committed to the repository.
pnpm changeset
This will bump the versions of the packages previously specified with pnpm changeset (and any dependents of those) and update the changelog files.
pnpm changeset version
Commit the changes. This command will publish all packages that have bumped versions not yet present in the registry.
pnpm publish -r
If you want to publish versions for test:
pnpm changeset pre enter alpha # 发布 alpha 版本
pnpm changeset pre enter beta # 发布 beta 版本
pnpm changeset pre enter rc # 发布 rc 版本