diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 00000000..89f6f9b1 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,88 @@ +# 🌟 Contributing Guide 🌟 + +We’re thrilled you want to join us in making a difference! Follow these steps to collaborate smoothly and efficiently. πŸš€πŸ’» + +## πŸ“ Issues + +The best way to contribute to our projects is to apply to the issues here . + +## πŸ‘€ Steps for New Contributions + +### 1️⃣ Fork the Repository + +- Click the **Fork** button in the top-right corner to create a copy of the repository under your account. + + +### 2️⃣ Clone the Fork + +- Clone the forked repository to your local machine by running the following command: + + ```bash + git clone https://github.com/YOUR_USERNAME/REPOSITORY_NAME.git + ``` + +- Replace `YOUR_USERNAME` and `REPOSITORY_NAME` with your GitHub username and the repository name. + + +### 3️⃣ Create a new branch or use the main branch + +- Create a branch name based on the type of change (e.g., `feat/name-related-issue`, `docs/name-related-issue`). + + ```bash + git checkout -b branch-name + ``` + + > Example: `docs/update-readme` or `fix/bottom-bug`. + +### 4️⃣ Make Changes and Write Commits + +- Make changes in your local repository +- Follow **atomic commit principles**: + + - Each commit should address a single, logical change. + - Avoid bundling unrelated changes in a single commit. In case you want to add additional items, please ask the mainteiners first. + - Write clear and descriptive commit messages using the format: + + ```bash + git add . + git commit -m "[type] description" + ``` + + > Types and when to use them: + + - `[feat]` A new feature + - `[fix]` A bug fix + - `[docs]` Documentation changes + - `[style]` Changes that do not affect the meaning of the code (formatting, etc.) + - `[refactor]` Code changes that neither fix a bug nor add a feature + - `[perf]` Changes that improve performance + - `[test]` Adding missing tests or correcting existing tests + - `[build]` Changes that affect the build system or external dependencies + - `[ci]` Changes to CI configuration files and scripts + - `[chore]` Maintenance changes that do not fall into any of the other categories + +### 5️⃣ Run the Project Locally + +- Ensure the project runs correctly after making your changes. +- Follow the project-specific setup instructions to test your changes locally. + +### 6️⃣ Push Your Changes + +- Push your changes to your forked repository: + + ```bash + git push origin your-branch-name + ``` + > - Replace `your-branch-name` with the name of your branch. + +### 7️⃣ Create a Pull Request (PR) + +- Navigate to your forked repository on GitHub. +- Click **New Pull Request** and select your branch to merge into the `main` of the original repository. + +## πŸ“ Additional Notes + +- Ensure your code follows the repository's coding standards. 🧹 +- Be respectful and responsive to feedback from project maintainers. πŸ™ + +Thank you for contributing and helping make this project even better! 🀝🌱 \ No newline at end of file