Quickstart
The objective of this document is to provide new volunteers with a step-by-step guide to start contributing to the Admin Panel tool at Greenstand.
1. Installing VSCode
You will need to set up your Integrated Development Environment (IDE) to start contributing. At Greenstand, we recommend using Visual Studio Code (VSCode) as your IDE.
Click here to download and install the latest version of VSCode for your OS.
Install Prettier extension for VSCode. Projects come with a .prettierrc
config file that enforces code format standards and avoids styling issues among developers.
2. Setting up GitHub
Create a GitHub account.
Install Git on your local machine.
Fork the Greenstand/admin-panel-client repo.
Clone the forked repo to your local machine.
Add upstream remotes to your local cloned repo.
3. Installing nvm, Node and setting up local variables
We are currently using Node version 16 to develop our projects. You can manage node versions installed on your machine by using Node Version Manager (nvm).
Download the nvm install script via cURL:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
Ensure that nvm was installed correctly with
nvm --version
, which should return the version of nvm installed.Run
nvm install
at the root directory oftreetracker-admin-client
to install the current version of Node supported by the project (this checks .nvmrc for the version).Run
npm install
to download project dependencies.
Dependency errors
You may encounter Node dependency errors:
npm ERR! code ERESOLVE
npm ERR! ERESOLVE could not resolve
If so, run npm install --legacy-peer-deps
Issues with different Node versions
Different Node version might cause unexpected problems. Please ensure that you are running the version of Node in .nvmrc in the project root.
4. Finding issues to work on
Browse Admin Panel issues and Project boards for something to work on.
Find an issue you are interested in.
Once you've found something you are interested in, comment on the issue requesting to be assigned to it:
I would like to work on this issue!
Once you are assigned the issue, follow the git workflow below to contribute.
5. Development workflow with Git
Before you start to code, make sure your local and forked repos are up to date with Greenstand's upstream repo.
Change to master branch:
git checkout master
Sync local repo with upstream:
git pull upstream master --rebase
Push upstream commits to fork:
git push origin master
Start working on your issue by creating a new feature branch:
Create new feature branch:
git checkout -b 'your-branch-name'
Commit your changes as you go along to make sure you don't lose them:
Add changes to staging:
git add .
Create commit:
git commit -m 'commit message here'
We enforce conventional commit message standard that follow the pattern [scope]: description, for example feat: add species filter.
Commits will fail if commit messages do not follow this pattern. Other available scopes are: fix:, feat:, build:, chore:, docs:, style:, refactor:, perf:, test:, ci:
Once you're happy with your changes, sync with Greenstand's upstream repo before pushing your commits:
Change to master branch:
git checkout master
Sync local repo with upstream:
git pull upstream master --rebase
Push upstream commits to fork:
git push origin master
Change to your feature branch:
git checkout 'your-feature-branch'
Apply upstream commits:
git rebase master
Resolve any possible conflicts with upstream commits
Push feature branch to fork:
git push origin 'your-feature-branch'
In your pull request comments, add a link to the issue you worked on:
Resolves #123
Code reviewers will review your pull request and either merge it to Greenstand's repo or request changes.
Congratulations! You just made your first contribution to Greenstand!
Last updated
Was this helpful?