Contributing to the project

This page is intended for use if you have any plans to potentially fix any bugs or add any features that you have thought of that we haven't.#

Firstly, if you are planning to contribute to the project, thank you.

Secondly, in order to get started git clone or fork the main branch on github. The necessary requirements for development are:

MongoDB local server

If you have all these you should have no issues in developing locally on your machine. Once you have everyone downloaded you need to copy the example.env folder inside config and fill in the enviroment variables needed to get started.


After all this has been fill in you need to install the variables on both the server and client.

npm i
npm i -g mongo-seeding-cli
cd client
npm i --legacy-peer-deps

Once the node modules are fully installed you can go back to the root of the project and run

npm run dev

This will run the backend and front end will run together using the concurrently and will refresh on any changes made to the codebase.


When using docker to test your changes the see how things act in a production enviroment you need to create a build for the front end. Use the following to re-create this.

cd client
npm run build

Move the build folder into the root of the project folder.


Use the following docker-compose to create a local build of the codebase. After completing the client build above.

version: "3.1"
container_name: db
image: mongo:4
restart: always
- ./docker-data/db:/data/db
container_name: peppermint
build: .
- 5000:5000
restart: on-failure
- mongo
MONGO_URI_DOCKER: "mongodb://mongo:27017/peppermint"
JWT_SECRET: "ZwfJtS3muY65CaeZ" # This is an example secret
PORT: 5000

Pull Requests#

Once all this is completed and everything builds and works then create a pull request on our github repo 🙌