This document outlines the contributing guidelines for the project.
In order to run the project, start by cloning the repository onto your local machine
git clone [email protected]:johanbook/meet.git
Create a .env
file like so and replace the required fields:
cp .env.example .env
# Generate VAPI keys needed for web push notifications
cd services/api
./scripts/generate-vapi-keys >> <YOUR-ENV>
To use a development build, run
docker-compose -f docker-compose.dev.yaml up --build
The application will be available on localhost and the console (admin portal) can be accessed at console.localhost.
Install Loki plugin
docker plugin install grafana/loki-docker-driver:latest --alias loki --grant-all-permissions
To use a production build, run
docker-compose -f docker-compose.prod.yaml up
The application will be available on localhost and the console (admin portal) can be accessed at console.localhost.
We use the TypeORM migration system for running and generating migrations.
Navigate to ./services/api
and run
./scripts/generate-migration MyMigrationName
To seed the database with test data, run services/api/scripts/seed-database
.
This project uses conventional commits for generating a changelog. See this guide for how it should be used.
This project uses semver, handled by the NPM package standard-version. For creating a new release, run the following commands:
npm run release
git checkout -b vX.Y.Z
Commit and push the files package.json
, package-lock.json
and CHANGELOG.md
and merge it to main
. Then pull this changes in and run the following on the
main branch:
git tag vX.Y.Z
git push origin vX.Y.Z
All files and folders in backend services should be named in kebab-case.