Make changes only in the frontend
directory. Adhere to the structure outlined
in the frontend README.
Follow the Airbnb JavaScript Style Guide.
To run the linter checks, execute:
npm run lint
To automatically fix what can be fixed, run:
npm run lint:fix
Unfortunately, we don't have any automated tests yet. Hence, we can't enforce any testing requirements.
Nevertheless, it's highly recommended to run a full DB + backend + frontend setup for running some manual tests.
To run the full setup, follow the instructions in the deployment README.
To be short, you need to:
- Install Docker and Docker Compose.
- Setup .env file
- Run the following command to start all services and initialize the database:
make start-all
For the details look in the deployment README.
Set up the check-dir
pre-commit hook as per the repository root instructions
to ensure compliance with our structure.
git config core.hooksPath .git-hooks
Use the following format for commit messages:
front: <Topic>.
<Description>
[Issue: #<GitHub Issue Number>]
Signed-off-by: <Your Name> <Your Email>
- Ensure the commit message is concise yet descriptive.
- If the commit fixes an issue, add the issue number in the commit message.
- Sign your commits to verify your identity (use
git commit -s
).
- Fork the repo, create your feature branch from
main
. Branch name should be in the formfeature/<Feature Name>
for new features andfix/<Issue Number>
for bug fixes. - Ensure code passes linting, has adequate test coverage, and adheres to our structure and style guide.
- Create a PR to merge your feature branch into
main
of the original repo. - In the PR description, provide a clear explanation of your changes and the motivation behind them.
- In the PR description, provide the Issue number that your PR fixes in a
form
Fixes #<Issue Number>
. This will trigger bots to check that the PRs changes address all the requirements of the issue. - PRs are reviewed with the help of AI bots @coderabbitai and @CodiumAI-Agent. Pay attention to their comments. If you disagree, provide a clear explanation in the comments.
- Resolve all discussion threads and ensure mandatory checks pass before merging.
- If a PR is inactive for more than 7 days, a 'stale' label will be added to it and a reminder will be posted in the PR.
- If a PR is inactive for more than 14 days, it will be closed.