|
| 1 | +# Machine Learning Repos Contributing Guidelines |
| 2 | + |
| 3 | +## Prerequisites ⚠️ |
| 4 | + |
| 5 | +- Open Source Etiquette: If you've never contributed to an open source project before, have a read of [Basic etiquette](https://developer.mozilla.org/en-US/docs/MDN/Community/Open_source_etiquette) for open source projects. |
| 6 | + |
| 7 | +- Basic familiarity with Git and GitHub: If you are also new to these tools, visit [GitHub for complete beginners](https://developer.mozilla.org/en-US/docs/MDN/Contribute/GitHub_beginners) for a comprehensive introduction to them. |
| 8 | + |
| 9 | +--- |
| 10 | + |
| 11 | +### Setup guidelines 🪜 |
| 12 | + |
| 13 | +**Follow these steps to setup Machine-Learning-Repos on your local machine 👇** |
| 14 | + |
| 15 | +- [Fork](https://github.com/recodehive/machine-learning-repos/fork) the repository |
| 16 | +- Clone the forked repository in your local system. |
| 17 | + |
| 18 | + ```bash |
| 19 | + https://github.com/recodehive/machine-learning-repos.git |
| 20 | + ``` |
| 21 | + - Navigate to the [Website](https://github.com/recodehive/machine-learning-repos/tree/main/Website) folder if you want to contribute to our website. |
| 22 | + ```bash |
| 23 | + cd Website |
| 24 | + ``` |
| 25 | + - Now install dependency |
| 26 | + ```bash |
| 27 | + cd server |
| 28 | + npm install |
| 29 | + ``` |
| 30 | +- Setup env file |
| 31 | + ``` |
| 32 | + 1. Create .env in the server folder |
| 33 | + 2. Store your Github PAT Token |
| 34 | + GITHUB_TOKEN = YOUR_GITHUB_TOKEN |
| 35 | + ``` |
| 36 | + - Run the Server |
| 37 | + ```bash |
| 38 | + cd server |
| 39 | + node server.js |
| 40 | + ``` |
| 41 | + - `Open http://localhost:3000 with your browser to see the result.` |
| 42 | + |
| 43 | + - Create a new branch for your feature. |
| 44 | + ```bash |
| 45 | + git checkout -b <your_branch_name> |
| 46 | + ``` |
| 47 | + - Perform your desired changes to the code base. |
| 48 | + - Track and stage your changes. |
| 49 | + ```bash |
| 50 | + # Track the changes |
| 51 | + git status |
| 52 | +
|
| 53 | + # Add changes to Index |
| 54 | + git add . |
| 55 | + ``` |
| 56 | +- Commit your changes. |
| 57 | + ```bash |
| 58 | + git commit -m "your_commit_message" |
| 59 | + ``` |
| 60 | +- Push your committed changes to the remote repo. |
| 61 | + ```bash |
| 62 | + git push origin <your_branch_name> |
| 63 | + ``` |
| 64 | +- Go to your forked repository on GitHub and click on `Compare & pull request`. |
| 65 | +- Add an appropriate title and description to your pull request explaining your changes and efforts done. |
| 66 | +- Click on `Create pull request`. |
| 67 | +- Congrats! 🥳 You've made your first pull request to this project repo. |
| 68 | +- Wait for your pull request to be reviewed and if required suggestions would be provided to improve it. |
| 69 | +- Celebrate 🥳 your success after your pull request is merged successfully. |
| 70 | +
|
| 71 | +
|
| 72 | +## ✅ Guidelines for Good Commit Messages |
| 73 | +We follow a standardized commit message format using Commitlint to ensure consistency and clarity in our commit history. Each commit message should adhere to the following guidelines: |
| 74 | +
|
| 75 | +1. **Be Concise and Descriptive**: Summarize the change in a way that’s easy to understand at a glance. |
| 76 | +2. **Use the Imperative Mood**: Write as if giving a command (e.g., `Add`, `Fix`, `Update`), which is a convention in many projects. |
| 77 | +3. **Include Context**: Provide context or reason for the change if it’s not immediately obvious from the summary. |
| 78 | +4. **Reference Issues and Pull Requests**: Include `issue numbers` or PR references if the commit addresses them. |
| 79 | +5. **Issue reference** (Optional): Include the issue number associated with the commit (e.g., `#123`). |
| 80 | +
|
| 81 | +## 📝 Commit Message Examples ✅ |
| 82 | +### Enhancing Documentation |
| 83 | +- `Improve - readability of <document> tutorial` |
| 84 | +- `Add - examples to ML documentation` |
| 85 | +- `Enhance - troubleshooting section in Prometheus guide` |
| 86 | +
|
| 87 | +### General Maintenance |
| 88 | +- `Refactor - README for better clarity` |
| 89 | +- `Reorganize repository structure for easier navigation` |
| 90 | +- `Remove - outdated tools from recommendations` |
| 91 | +
|
| 92 | +# ❌ Examples of Invalid Commit Messages |
| 93 | +
|
| 94 | +- `Added new stuff` |
| 95 | +- `Fixed a bug` |
| 96 | +- `Updated code` |
| 97 | +- `auth feature update` |
| 98 | +- `chore: fixed some stuff` |
| 99 | +
|
| 100 | +## Commit Example with Commitlint |
| 101 | +
|
| 102 | +```bash |
| 103 | +git commit -m "feat(auth): Implement user signup process (#789)" |
| 104 | +``` |
| 105 | +
|
| 106 | +--- |
| 107 | +
|
| 108 | +- If something is missing here, or you feel something is not well described, please [raise an issue](https://github.com/recodehive/machine-learning-repos/issues). |
| 109 | +
|
0 commit comments