@@ -21,41 +21,52 @@ you maintain a collaborative and inclusive environment for everyone involved.
21
21
22
22
Thank you for considering contributing to our project! To make the process smooth, please follow these steps:
23
23
24
- 1 . ** Fork the Repository:**
25
- - Visit our [ GitHub repository] ( https://github.com/afet-yonetim-sistemi/ays-be ) and fork it to your GitHub account.
26
-
27
- 2 . ** Create a New Branch:**
28
- - Create a branch for your contribution by referring to
29
- the [ Naming Conventions of Branches] ( #branch-naming-conventions ) for guidance.
30
- - Ensure your feature branch is associated with the corresponding GitHub issue from the 'Development' section in
31
- each issue page.
32
-
33
- 3 . ** Make Changes:**
24
+ 1 . ** Join Our Discord Server:**
25
+ - Join our [ Discord server] ( https://discord.com/invite/NkAkYajkKa ) to engage with the community and project
26
+ maintainers.
27
+ - Navigate to the 'Environment Informations' section and find the GitHub thread. Leave a message in the thread to
28
+ express your interest in contributing.
29
+
30
+ 2 . ** Review Jira Issues:**
31
+ - Access
32
+ our [ Jira Issues] ( https://afetyonetimsistemi.atlassian.net/jira/software/c/projects/AYS/issues/AYS-408?filter=allissues&jql=project%20%3D%20%22AYS%22%20AND%20status%20%3D%20Ready%20AND%20assignee%20%3D%20empty%20ORDER%20BY%20created%20DESC )
33
+ to view the issues and development tasks.
34
+ - Identify relevant issues or features you would like to work on.
35
+
36
+ 3 . ** Cloning the Project:**
37
+ - Once added to the GitHub organization, clone the repository from the organization’s GitHub page.
38
+ - Clone the repository using the command: ` git clone https://github.com/afet-yonetim-sistemi/ays-be `
39
+
40
+ 4 . ** Create a New Branch:**
41
+ - Create a branch for your contribution based on the ` main ` branch.
42
+ - Refer to the [ Naming Conventions of Branches] ( #branch-naming-conventions ) for guidance on branch naming.
43
+ - Ensure your feature branch is associated with the relevant Jira issue and GitHub issue if applicable.
44
+
45
+ 5 . ** Make Changes:**
34
46
- Implement your changes in the branch you created.
35
47
- Thoroughly test your changes to ensure they work as expected.
36
48
37
- 4 . ** Commit Changes:**
38
- - Commit your changes with clear and concise messages. Refer to the [ Commit Messages] ( #commit-messages ) section for
39
- guidance.
49
+ 6 . ** Commit Changes:**
50
+ - Commit your changes with clear and concise messages. Refer to the [ Commit Messages] ( #commit-messages ) section for
51
+ guidance.
40
52
41
- 5 . ** Push Changes:**
42
- - Push your changes to your forked repository.
53
+ 7 . ** Push Changes:**
54
+ - Push your changes to the ` main ` branch of your cloned repository.
43
55
44
- 6 . ** Open a Pull Request (PR):**
45
- - Open a PR against the ` main ` branch of the original repository by referring to
46
- the [ Pull Request Naming Conventions] ( #pull-request-naming-conventions ) for guidance.
56
+ 8 . ** Open a Pull Request (PR):**
57
+ - Open a PR against the ` main ` branch of the original repository.
47
58
- Provide a detailed description of your changes in the PR.
48
- - Link relevant issues or discussions in the PR description.
59
+ - Link relevant Jira issues and GitHub issues in the PR description.
49
60
- Follow the pull request naming conventions outlined below.
50
- - PR title should contain the issue/feature/bug number.
61
+ - PR title should contain the Jira issue number and a brief description of the change .
51
62
52
- 7 . ** Review and Feedback:**
63
+ 9 . ** Review and Feedback:**
53
64
- Once your PR is submitted, project maintainers will review it and provide feedback.
54
65
- Be responsive to feedback and make necessary changes.
55
66
56
67
## Development Standards
57
68
58
- Our project adheres to the [ GitHub flow ] ( https://docs.github.com/en/get-started/quickstart/github-flow ) for
69
+ Our project adheres to the [ GitHub Flow ] ( https://docs.github.com/en/get-started/quickstart/github-flow ) for
59
70
collaboration.
60
71
Issues are managed on GitHub Discussions, with plans to transition them to Jira.
61
72
@@ -121,31 +132,64 @@ code style guidelines mentioned in the repository.
121
132
Writing clear and descriptive commit messages is essential for the maintainability of the project. Follow these
122
133
guidelines when writing commit messages:
123
134
124
- - Limit the subject line to 50 characters.
125
- - Begin the subject line with a verb in the present tense (e.g., "Fix," "Add," "Update").
126
- - Use the imperative mood (e.g., "Fix bug" instead of "Fixed bug").
127
- - Provide additional details in the commit message body if necessary. Explain why the change was made and any relevant
128
- information for reviewers.
135
+ - ** Be Clear and Concise:**
136
+ - Ensure the subject line clearly summarizes the change. While it’s useful to start with a verb (e.g., "Fix," "
137
+ Add," "Update"), the main goal is to make sure the message is clear and easily understandable.
138
+
139
+ - ** Provide Additional Details:**
140
+ - Include additional details in the commit message body if necessary.
141
+ - Explain the reason for the change and provide context to help reviewers understand the impact and purpose of the
142
+ change.
129
143
130
- Example:
144
+ - ** Squash and Merge:**
145
+ - We use the Squash and Merge strategy for integrating pull requests. This method combines all commits in a pull
146
+ request into a single commit before merging.
147
+ - As a result, the pull request title becomes the final commit message. Ensure the title is descriptive and
148
+ accurately reflects the overall change.
149
+ - Example pull request title: ` Enhance Error Handling in Payment Processing `
131
150
132
- ```
133
- Add feature to handle user authentication
151
+ - ** Example Commit Message:**
152
+ ```
153
+ Add new endpoint to handle user authentication
134
154
135
- - Implemented a new module for user authentication
136
- - Updated existing login page UI
137
- - Added new API endpoint for user registration
138
- ```
155
+ - AYS-0 : Add new POST endpoint to handle user login
156
+ - Include validation for user credentials
157
+ - AYS-0 | Authentication Flow Has Been Refactored
158
+ ```
159
+
160
+ By following these guidelines, you contribute to a clear and understandable project history, facilitating easier code
161
+ reviews and collaboration.
139
162
140
163
## Testing
141
164
142
- If you are contributing code changes, it is important to include appropriate tests to ensure the stability and
165
+ If you are contributing code changes, it is crucial to include appropriate tests to ensure the stability and
143
166
functionality of the project. Follow these guidelines when writing tests:
144
167
145
- - Write tests that cover the new code you have added or modified.
146
- - Ensure your tests are easy to understand and maintain.
147
- - Run the existing test suite before submitting your changes to make sure they haven't introduced any regressions.
148
- - Provide instructions on how to run the tests if they require additional setup or specific commands.
168
+ - ** Unit Tests:**
169
+ - Write unit tests to cover the new code you have added or modified.
170
+ - Ensure that each unit test is focused on a single aspect of the code to make it easy to understand and maintain.
171
+
172
+ - ** Integration Tests:**
173
+ - Include integration tests to verify that different parts of the system work together as expected.
174
+ - Make sure your integration tests cover scenarios where multiple components interact.
175
+
176
+ - ** Manual Tests:**
177
+ - Use Postman to write and execute manual tests for API endpoints and ensure they perform as intended.
178
+ - Document any manual test cases in a way that they can be easily replicated.
179
+
180
+ - ** Test-Driven Development (TDD):**
181
+ - When applicable, adopt the TDD approach. Write your tests before implementing the new code to ensure your changes
182
+ meet the required functionality from the start.
183
+
184
+ - ** Run Existing Test Suite:**
185
+ - Run the existing test suite before submitting your changes to ensure they haven't introduced any regressions.
186
+ - Address any failing tests that might be impacted by your changes.
187
+
188
+ - ** Instructions for Running Tests:**
189
+ - Provide clear instructions on how to run the tests, including any additional setup or specific commands needed.
190
+
191
+ By following these guidelines, you help maintain the quality and stability of the project while making it easier for
192
+ others to contribute and collaborate.
149
193
150
194
## Documentation
151
195
0 commit comments