Skip to content

Development

neoddish edited this page Dec 1, 2021 · 3 revisions

Quick Start

  • clone the repo to your local
  • npm install
  • lerna bootstrap
  • make some changes...

Package Management

AVA contains multiple npm packages. We use lerna to manage all these packages.

All the packages would be placed in the packages/ folder.

So far, we have three "tools" and they contain five packages in total:

β”œβ”€β”€ packages
    β”œβ”€β”€ chart-advisor      # package: @antv/chart-advisor
    β”œβ”€β”€ knowledge          # package: @antv/knowledge
    └── datawizard         # package set
        β”œβ”€β”€ analyzer           # package: @antv/dw-analyzer
        β”œβ”€β”€ random             # package: @antv/dw-random
        └── transform          # package: @antv/dw-transform

Modification

Usually, we have a src folder in each package. It contains the source code. Read the README.md file to understand the structure of the package and try to modify things.

Test

The __tests__ folder in each package is for jest testing. These test cases are linked by jest. You can find the settings in jest.config.js.

Install a plugin for your editor, such as vscode-jest for vscode, then the tests should run automatically.

Demos

There is a web app in demo/. It is for testing like a user of AVA.

Under the root of this repo, try:

npm start

and visit http://localhost:8881/, you might interact with the demos.

Also, try to add a demo after changing something or adding some features.

Site

Site means the official website of AVA: https://ava.antv.vision/

It is under sites/ava-site/ and managed by lerna as well.

To develop the site:

// root
npm run setup:site
npm run start:site

// or, cd sites/ava-site
npm start

Visit http://localhost:8880/ after the build is complete.

Git

Never push anything to the master branch unless you are the admin of this project. Use Pull Request.

Clone this wiki locally