Development Workflow
1. JIRA Tickts
- You must create a JIRA ticket that at the minimum has a title that reflects the work/feature/bug you need to do. If the title cannot fully reflect what needs to be done, include a description
- Also add a description to the ticket with what you want/need/plan to do.
- When creating tickets, set the
Issue Typeto:- Story if you know the work that needs to be done will not be completed at once or in single issue. Create subtasks to track the items that need to be done to complete the issue.
- Task if the work can be completed in and tracked in a single task
2. Git
2.1 Best Practices
Please take note!
For now, all PR's can be merged by their respective owners. This will change in the future!
New Branch Naming Convention
Branch naming convention is being enforced at the repository level! If you have any issues please contact Eldad Onojetah via Slack.
- You should always refresh your local
mainbranch before you start coding with agit pull. - You must create a branch for all your development. Direct pushing/commit/merge to main has been disabled. If using a Git GUI client like
Github Desktopyou will see a message like below - When creating a branch, ensure that your branch name includes the issue no. Eg if your new JIRA ticket/issue is
HEAL-9999 Add a new endpoint to API, your branch name should beeo/HEAL-9999 API add new endpointNote:HEALshould be all caps! This would enable easy linking of Git branch/commits to JIRA issues. - To merge your changes, create a Pull Request
PRand when all the tests pass, then merge the PR. - For now, you can merge your PR yourself, pending when we fully integrate PR enformcement.
- Before you push your PR to Git, always ensure that you:
- switch to your local
mainbranch and do agit pull. Ensure that your local branch is ok and no merge conflicts - switch back to the branch you are working on and merge your local
mainbranch into your branch. Resolve any conflicts
- switch to your local
2.2 Coding/Development
- Always build your local branch and ensure no errors before you commit/push your changes to the remote branch.
- Always run
npx prettier --write "src/**/*.{js,ts}"This is to ensure your code is properly formated. - Where tests are available, ensure all tests pass before pushing your committing/changes.
- Where lint is configured, ensure linting passes before committing/pushing your changes
- Enable
.editorconfigso your IDE automatically runsprettierwhen you save a file.