|
2 | 2 |
|
3 | 3 | # Contributing to LocalMind |
4 | 4 |
|
5 | | -Thank you for your interest in contributing to **LocalMind**! |
6 | | -We welcome all contributions — bug fixes, new features, documentation improvements, or even small cleanups. |
| 5 | +Thank you for your interest in contributing to **LocalMind** 🎉 |
| 6 | +We truly appreciate your time and effort. Contributions of all kinds are welcome — whether it’s fixing bugs, adding features, improving documentation, enhancing UI/UX, or refactoring code. |
7 | 7 |
|
8 | | -Please follow the guidelines below to help us keep the project organized, consistent, and easy for everyone to work with. |
| 8 | +This guide outlines the best practices to help you contribute smoothly and effectively. |
9 | 9 |
|
10 | 10 | --- |
11 | 11 |
|
12 | | -## 🛠️ How to Contribute |
| 12 | +## 🌟 Why Contribute? |
| 13 | + |
| 14 | +By contributing to LocalMind, you help: |
| 15 | +- Improve the project’s stability and features |
| 16 | +- Make the codebase more beginner-friendly |
| 17 | +- Support an open and collaborative developer community |
| 18 | +- Gain real-world open-source experience |
| 19 | + |
| 20 | +--- |
| 21 | + |
| 22 | +## 🛠️ Contribution Workflow |
13 | 23 |
|
14 | 24 | ### 1. Fork the Repository |
15 | 25 |
|
16 | | -Click the **Fork** button on GitHub to create your own copy of this repository. |
| 26 | +Create your own copy of the LocalMind repository by clicking the **Fork** button on GitHub. |
| 27 | +All changes should be made in your fork, not directly in the main repository. |
| 28 | + |
| 29 | +--- |
17 | 30 |
|
18 | 31 | ### 2. Clone Your Fork |
19 | 32 |
|
| 33 | +Clone the forked repository to your local system and navigate into the project directory. |
20 | 34 |
|
| 35 | +```bash |
21 | 36 | git clone https://github.com/<your-username>/LocalMind.git |
22 | 37 | cd LocalMind |
| 38 | +``` |
23 | 39 |
|
| 40 | +--- |
24 | 41 |
|
25 | 42 | ### 3. Create a New Branch |
26 | 43 |
|
27 | | -Create a branch that describes your change: |
| 44 | +Always create a new branch for your work. |
| 45 | +Choose a branch name that clearly describes the change you’re making. |
28 | 46 |
|
| 47 | +**Recommended branch naming conventions:** |
| 48 | +- `feature/add-search-bar` |
| 49 | +- `fix/api-error` |
| 50 | +- `docs/update-contributing` |
| 51 | +- `refactor/navbar-component` |
29 | 52 |
|
30 | | -git checkout -b feature-name |
31 | | - |
| 53 | +This helps maintain clarity and clean version control. |
32 | 54 |
|
33 | | -Examples: |
| 55 | +```bash |
| 56 | +git checkout -b feature-name |
| 57 | +``` |
34 | 58 |
|
35 | | -* `add-license` |
36 | | -* `fix-path-error` |
37 | | -* `improve-readme` |
38 | | -* `add-ui-component` |
| 59 | +--- |
39 | 60 |
|
40 | 61 | ### 4. Make Your Changes |
41 | 62 |
|
42 | | -* Add or update necessary files. |
43 | | -* Keep code style clean and consistent. |
44 | | -* If adding a feature, include relevant documentation. |
| 63 | +While working on your changes: |
| 64 | +- Follow the existing project structure and conventions |
| 65 | +- Keep code readable and well-organized |
| 66 | +- Add comments where logic may be unclear |
| 67 | +- Update or add documentation if your change introduces new behavior |
| 68 | +- Test your changes before committing |
45 | 69 |
|
46 | | -### 5. Commit Your Changes |
47 | | - |
48 | | -Use meaningful commit messages: |
| 70 | +--- |
49 | 71 |
|
| 72 | +### 5. Commit Your Changes |
50 | 73 |
|
51 | | -git add . |
52 | | -git commit -m "Short description of the change" |
| 74 | +Write clear, concise, and meaningful commit messages. |
53 | 75 |
|
| 76 | +**Commit message best practices:** |
| 77 | +- Use the imperative mood (e.g., “Add”, “Fix”, “Improve”) |
| 78 | +- Keep the first line short and descriptive |
| 79 | +- Avoid vague messages like “update” or “changes” |
54 | 80 |
|
55 | | -**Good examples:** |
| 81 | +**Examples of good commit messages:** |
| 82 | +- `Add dark mode toggle to navbar` |
| 83 | +- `Fix broken route in frontend` |
| 84 | +- `Improve error handling for login API` |
| 85 | +- `Update README with setup instructions` |
56 | 86 |
|
57 | | -* `Add MIT license` |
58 | | -* `Fix missing environment variable issue` |
59 | | -* `Improve error handling in backend API` |
| 87 | +--- |
60 | 88 |
|
61 | 89 | ### 6. Push to Your Fork |
62 | 90 |
|
| 91 | +Push your branch to your forked repository on GitHub. |
| 92 | + |
| 93 | +```bash |
63 | 94 | git push origin feature-name |
| 95 | +``` |
64 | 96 |
|
| 97 | +--- |
65 | 98 |
|
66 | 99 | ### 7. Open a Pull Request (PR) |
67 | 100 |
|
68 | | -* Go to your fork on GitHub. |
69 | | -* Click **Compare & pull request**. |
70 | | -* Choose base: `main` (original repo) |
71 | | - compare: `feature-name` (your branch) |
72 | | -* Add a clear description of the changes. |
| 101 | +Once your changes are pushed: |
| 102 | +- Navigate to your fork on GitHub |
| 103 | +- Click **Compare & pull request** |
| 104 | +- Set the base branch to `main` (original repository) |
| 105 | +- Set the compare branch to your feature branch |
73 | 106 |
|
74 | | ---- |
| 107 | +In the PR description: |
| 108 | +- Clearly explain **what** you changed |
| 109 | +- Explain **why** the change is necessary |
| 110 | +- Reference any related issues (if applicable) |
| 111 | +- Add screenshots or screen recordings for UI changes |
75 | 112 |
|
76 | | -## 🧪 Coding Guidelines |
| 113 | +--- |
77 | 114 |
|
78 | | -* Follow consistent formatting and naming. |
79 | | -* Write clear comments where needed. |
80 | | -* Avoid committing temporary or system-generated files. |
81 | | -* If your change affects functionality, explain the reason in the PR. |
| 115 | +## 🧪 Coding Standards & Best Practices |
82 | 116 |
|
83 | | ---- |
| 117 | +Please ensure that your contribution: |
| 118 | +- Uses consistent formatting and naming conventions |
| 119 | +- Avoids committing generated, build, or system files |
| 120 | +- Does not introduce unnecessary dependencies |
| 121 | +- Keeps functions and components modular and reusable |
84 | 122 |
|
85 | | -## 📄 Adding License or Documentation Changes |
| 123 | +If your change affects core functionality, explain the impact clearly in the PR. |
86 | 124 |
|
87 | | -If you are contributing files such as: |
| 125 | +--- |
88 | 126 |
|
89 | | -* `LICENSE` |
90 | | -* `README.md` |
91 | | -* `CONTRIBUTING.md` |
92 | | -* `CODE_OF_CONDUCT.md` |
| 127 | +## 📄 Documentation & Configuration Contributions |
93 | 128 |
|
94 | | -Make sure: |
| 129 | +If your contribution involves files such as: |
| 130 | +- `README.md` |
| 131 | +- `LICENSE` |
| 132 | +- `CONTRIBUTING.md` |
| 133 | +- `CODE_OF_CONDUCT.md` |
| 134 | +- Configuration or workflow files |
95 | 135 |
|
96 | | -* File names follow standard naming. |
97 | | -* Text is clearly formatted in Markdown. |
98 | | -* The PR explains why the document is being added or updated. |
| 136 | +Please ensure: |
| 137 | +- Markdown formatting is clean and readable |
| 138 | +- File names follow standard conventions |
| 139 | +- Content is accurate, concise, and helpful |
| 140 | +- The PR clearly explains the purpose of the update |
99 | 141 |
|
100 | 142 | --- |
101 | 143 |
|
102 | | -## 🧵 Keeping Your Fork Updated |
103 | | - |
104 | | -Before starting new work, sync your fork: |
| 144 | +## 🔄 Keeping Your Fork Up to Date |
105 | 145 |
|
| 146 | +To avoid conflicts, regularly sync your fork with the upstream repository before starting new work. |
106 | 147 |
|
| 148 | +```bash |
| 149 | +git remote add upstream https://github.com/original-owner/LocalMind.git |
107 | 150 | git fetch upstream |
108 | 151 | git checkout main |
109 | 152 | git merge upstream/main |
110 | 153 | git push origin main |
111 | | - |
| 154 | +``` |
112 | 155 |
|
113 | 156 | --- |
114 | 157 |
|
115 | | -## ❓ Need Help? |
| 158 | +## 🤝 Community & Support |
116 | 159 |
|
117 | | -If you have questions or want guidance: |
| 160 | +If you need help or have questions: |
| 161 | +- Open a **GitHub Issue** |
| 162 | +- Start a **Discussion** in the repository |
| 163 | +- Ask for clarification in an existing issue or PR |
118 | 164 |
|
119 | | -* Open an **Issue** on GitHub |
120 | | -* Or start a discussion in the repository |
121 | | - |
122 | | -We are happy to help! |
| 165 | +We encourage respectful communication and collaboration. |
123 | 166 |
|
124 | 167 | --- |
125 | 168 |
|
126 | | -Thank you again for contributing to **LocalMind** ❤️ |
127 | | -Your efforts help make this project better for everyone! |
| 169 | +## 💖 Thank You! |
128 | 170 |
|
129 | | ---- |
| 171 | +Every contribution — big or small — makes a difference. |
| 172 | +Thank you for helping improve **LocalMind** and being part of our open-source journey! |
| 173 | + |
| 174 | +Happy coding 🚀 |
0 commit comments