Skip to content

Commit 962254e

Browse files
committed
docs: enhance contribution guidelines with detailed steps for new contributors
1 parent f282593 commit 962254e

File tree

1 file changed

+57
-1
lines changed

1 file changed

+57
-1
lines changed

CONTRIBUTING.md

Lines changed: 57 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,63 @@ Once it's filed:
107107

108108
#### Your First Code Contribution
109109

110-
TODO
110+
Welcome to contributing to `GovTool`! Whether you're fixing a bug, adding a feature, or improving documentation, we’re excited to have you on board. This section guides you through your first code contribution to make the process smooth and rewarding.
111+
112+
#### Getting Started
113+
114+
1. **Set Up Your Environment**:
115+
- Follow the instructions in [`README.md`](./README.md) file and navigate to the specific folder corresponding to the form you want to fix or enhance.
116+
- Follow the setup instructions to clone the repository and install the necessary dependencies.
117+
- Make sure you're using the latest version of the project to avoid potential conflicts.
118+
119+
2. **Find an Issue to Work On**:
120+
- Browse open issues on the [GovTool GitHub Issues page](https://github.com/IntersectMBO/govtool/issues).
121+
- Look for issues labeled `🐛 Bug` or `💡 Feature idea`.
122+
- For existing feature idea tasks, comment on the issue to express interest or share thoughts.
123+
124+
3. **Claim an Issue**:
125+
- Comment on the issue to let maintainers know you’re working on it. This helps avoid duplicate efforts.
126+
- Move the issue from `todo` to `in progress` on the project board (if you have permissions).
127+
128+
129+
4. **Fork the Repository**:
130+
- This step applies only if you lack permission to create branches or perform actions in the `govtool` repository.
131+
- Fork the `govtool` repository on GitHub to create a copy under your account.
132+
133+
134+
4. **Create a Branch**:
135+
- Create a new branch from the `develop` branch with a descriptive name (see [Branch Naming](#branch-naming)).
136+
- Example: `feat/123-add-voting-ui` or `fix/456-update-api-endpoint`.
137+
138+
5. **Make Your Changes**:
139+
- Write clean, well-documented code following the [Style Guides](#style-guides) for React, Haskell, CSS, or other relevant technologies.
140+
- Add or update tests to ensure your changes are robust.
141+
- Keep your changes focused and aligned with the issue’s scope.
142+
143+
6. **Commit Your Changes**:
144+
- Write clear, concise commit messages following the [Commit Messages](#commit-messages) guidelines.
145+
146+
7. **Submit a Pull Request**:
147+
148+
`If You Have Push Permissions to the Original Repository`
149+
- Push your branch to the repository and create a pull request (PR) to the `develop` branch.
150+
151+
`If You Don’t Have Push Permissions (Using a Forked Repository)`
152+
- Push your branch to the forked repository and create a pull request (PR) in the `govtool` main repository, using the `govtool` `develop` branch as the base and your fork’s branch name as the head repository.
153+
154+
- Use the PR template provided in the repository and link the related issue (e.g., `issues #123`).
155+
- Describe your changes clearly, including why they’re needed and how they were tested.
156+
- If your PR isn’t ready for review, mark it as a draft.
157+
158+
8. **Address Feedback**:
159+
- Expect reviews from maintainers or other contributors (see [CODEOWNERS](./CODEOWNERS)).
160+
- Respond to feedback promptly and make requested changes.
161+
- Once approved, your PR will be merged into `develop` by the author after passing tests.
162+
163+
9. **Celebrate Your Contribution!**:
164+
- Once merged, your changes will move through the [Development Processes](#development-processes) (QA, staging, etc.).
165+
- You’re now a `GovTool` contributor! Share your achievement and consider tackling another issue.
166+
111167

112168
## Working Conventions
113169

0 commit comments

Comments
 (0)