- We use the active NodeJS LTS. If you need to work with multiple versions of Node, you might consider using nvm.
- This repository uses yarn to manage node dependencies. Please install yarn globally using
npm install --global yarn
. - Tests are executed on the latest NodeJS as well as all active and maintained NodeJS LTS versions.
The packages directory contains the different npm packages.
You would only do this once after you cloned the repository.
- Clone this repository from git.
cd
intocommand
.- We develop using feature brances off
main
and release from themain
branch. At this point, it should be set tomain
by default. If not, rungit checkout -t origin/main
. yarn
to bring in all the top-level dependencies.- Open the project in your editor of choice.
- We enforce commit message format. We recommend using commitizen by installing it with
yarn global add commitizen
then commit usinggit cz
which will prompt you questions to format the commit message. - Before commit and push, husky will run several hooks to ensure the message and that everything lints and compiles properly.
This compiles the typescript to javascript.
This cleans all generated files and directories. Run yarn clean-all
to also clean up the node_module directories.
This tests the typescript using ts-node.
This generates documentation into docs.
This lints all the typescript. If there are no errors/warnings from eslint, then you get clean output..