This repository employs a monorepo setup with pnpm workspaces, and hosts a number of associated but separated packages.
- The
plugins
directory contains all the official plugins. - The
themes
directory contains all the official themes.
Pre-requirement:
Clone the repo, and install dependencies:
pnpm install
Build source code:
pnpm build
Run unit tests:
pnpm test
Main tools that used in this project:
- TypeScript as the development language
- Vitest for unit testing
- ESLint + Prettier for code linting and formatting
The build
script uses tsc
to compile TypeScript source files to JavaScript dist files.
Also, it will copy necessary resources from source directory to dist directory, because some source files (e.g. .vue
, .css
files) would not be processed by tsc
, but should keep the same relative path in the dist directory.
You may need to run this script first after your clone this repository, because the dist files are ignored by .gitignore
.
The clean
script runs clean
script in all packages, cleaning all the dist files and caches. In other words, it will remove all the files that generated by build
script.
It's used before you want to re-build source files from a clean / initial state.
The format
script uses Prettier to format all source files.
The lint
script uses ESLint to check all source files.
The test
script uses Vitest to run unit testings.