- Fork the repo and checkout your fork
- Create a branch for your change
nvm use
to pick up node version from.nvmrc
npm i --ci
to install all required packagesdocker-compose up
to spin up the test database. Make sure port5432
is available.npm run watch
- tests should now run and pass.
Tests are located in ./test
and can be ran in watch mode via npm run watch
.
All changes code must have accompanying tests. If you are adding a new feature to the library, add an integration test that uses the library as a user might use it in their own tests. Be sure to include unit tests for the individual components too.
All migration files are located in ./db
. These files are executed in alphabetical order, so name your files <next_migration_number>_<what_is_added>.sql
.
For example 002_user_login_count.sql
if I were adding a new table that counts user logins.
This project uses Commitizen to enforce linted commits that can be used to automatically generate a change log.
Instead of using git commit
to commit, use npm run commit
or npx cz
and follow the prompts.