Thank you for your interest in contributing to our project! We welcome your help and appreciate your support. To ensure a smooth and collaborative process, please take a moment to review this contributing guide.
-
Clone the forked repository to your local machine with this command:
git clone https://github.com/<your github username>/contributions-web.git
-
Switch to
development
branch with this command:git checkout development
.
If your contribution is a documentation, jump to step 7 below. -
(You can ignore this step if you're using docker compose) Create a
.env
file and copy the content of.env.sample
file into it, then add the value(s) of environment variable(s). You can use the current running API URL as the value toCONTRIBUTIONS_API_URL
variable as the following:CONTRIBUTIONS_API_URL=https://contributions.api.prod.josa.ngo/
-
Check current issues, and if you're a beginner, you can filter issues with
good first issues
label.
If you decide to work on one of the issue, write a comment on the issue asking to be assigned to it.
Do not work on issues that you're not assigned to in order to avoid duplicate work. -
Create a new branch from
development
branch for the task that you want to work on:
git checkout -b <prefix>/branch-title
<prefix>
: The prefix should be one of the following:feat
for new featuresfix
for bug fixestask
for other general tasksdocs
for documentation
branch-title
should be short and concise and written in kebab-case (separate each word with '-')
Example:git checkout development && git pull # pull the latest changes from development branch git checkout -b fix/type # create new branch
-
Write descriptive and concise commit messages
Follow these guidelines when writing commit messages:- Limit the first line of the commit message to 72 characters or less.
- Use the imperative mood and present tense in the subject line, e.g. "Fix typo in the homepage" instead of "Fixed typo...".
- Use the body of the commit message to provide additional context or details, if necessary.
- Use bullet points in the body of the commit message to break down changes, if necessary.
-
Push to your branch and then make a pull request from your branch to the base
development
.
Make sure that docker is installed on your system
and then run the project locally using docker compose with this command:
docker compose up
.
- Make sure Node v16 is installed. Alternatively, you can use NVM to install any node version.
- Navigate to the project directory and run
npm i
to install the dependancies. - Run the project in development mode by running
npm run dev
. You can now preview the project on port 3000 by visiting http://localhost:3000/ in your browser.
If you want to report a bug or submit a feature request, please use one of the templates here.