I want to make contributing to this project as easy and transparent as possible, whether it's:
- Reporting an issue
- Submitting a fix
- Proposing new features
The code of conduct is described in CODE_OF_CONDUCT.md
.
This project is using the conventional commits standard. Please follow these steps to ensure your commit messages are standardized:
- Commit messages should have this format:
<type>[optional scope]: <description>
- Type should be
fix
(if fixed some bug),feat
(if added new feature),docs
(changes in documentation) ortest
(added new tests) - Scope should be
frontend
orbackend
orglobal
if your changes affects both. - Description should be concise.
- Example:
docs(global): CONTRIBUTING.md added
Note: All the commits should be made from the root directory of the repository
- Fork and clone the repository.
- Add remote upstream
git remote add upstream https://github.com/BitByte-TPC/TPC-website.git
- Run
npm i
in the root directory of the repository.
- Start MongoDB server
- Run
npm install
to install all dependencies - Make a
.env
file with all secrets. You also need to generate google client id and secret key. You may refer to this for the steps.Note: Put
<server_url>/api/auth/google/redirect
in redirect url when generating google client id and secret. - You also need to generate access token and refresh token for sending emails. Follow this guide to generate you own.
- Run
npm run dev
to start server
- Run
cd frontend
- Run
npm install
to install all dependencies. - Run
npm start
to start the server and visit site.
- Run
git fetch upstream
&git rebase upstream/main
to fetch updated codebase into your local repository before creating any new branch. - Run
git checkout -b <your-branch-name>
By contributing to TPC-website, you agree that your contributions will be licensed under the LICENSE file.