Skip to content

Latest commit

 

History

History
67 lines (39 loc) · 1.84 KB

CONTRIBUTING.md

File metadata and controls

67 lines (39 loc) · 1.84 KB

Contributing Guide

Overview

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.

Development Setup

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:

Scripts

pnpm build

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.

pnpm clean

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.

pnpm format

The format script uses Prettier to format all source files.

pnpm lint

The lint script uses ESLint to check all source files.

pnpm test

The test script uses Vitest to run unit testings.