Skip to content

Commit bce4c37

Browse files
Merge pull request #2676 from hackdartstorm/pr-2672
docs: enhance contributing section with detailed guidelines
2 parents 68d724a + f0a1370 commit bce4c37

2 files changed

Lines changed: 77 additions & 22 deletions

File tree

README.md

Lines changed: 72 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -170,47 +170,100 @@ We welcome contributions of all kinds! Here's how to help:
170170

171171
### Ways to Contribute
172172

173-
1. **Solve Issues** - Pick an issue and submit your solution
174-
2. **Improve Documentation** - Fix typos, add examples
175-
3. **Create New Issues** - Report bugs or suggest features
176-
4. **Help Others** - Answer questions in discussions
177-
5. **Review PRs** - Review and provide feedback
173+
| Contribution Type | Description | Good For |
174+
|-------------------|-------------|----------|
175+
| **🐛 Fix Bugs** | Fix issues in existing code | All levels |
176+
| **📝 Add Examples** | Contribute new Python examples | Beginner+ |
177+
| **🧪 Write Tests** | Add unit tests for code | Intermediate+ |
178+
| **📖 Improve Docs** | Enhance documentation | All levels |
179+
| **💡 Suggest Features** | Propose new learning modules | All levels |
180+
| **🔍 Review PRs** | Review and provide feedback | Advanced |
178181

179182
### Quick Start for Contributors
180183

181184
```bash
182-
# 1. Fork the repository
185+
# 1. Fork the repository on GitHub
186+
183187
# 2. Clone your fork
184188
git clone https://github.com/YOUR_USERNAME/Python.git
185189
cd Python
186190

187191
# 3. Create a branch
188-
git checkout -b feature/your-feature
192+
git checkout -b issue-<number>-your-name
189193

190194
# 4. Make your changes
195+
# - Follow PEP 8 style guidelines
196+
# - Add comments explaining your code
197+
# - Include test cases if applicable
198+
191199
# 5. Test your changes
200+
python -m pytest # or run individual scripts
201+
192202
# 6. Commit and push
193203
git add .
194-
git commit -m "feat: add your feature"
195-
git push origin feature/your-feature
204+
git commit -m "feat: add your feature description"
205+
git push origin issue-<number>-your-name
196206

197-
# 7. Create a Pull Request
207+
# 7. Create a Pull Request on GitHub
198208
```
199209

200210
### Contribution Guidelines
201211

202-
- ✅ Follow PEP 8 style guidelines
203-
- ✅ Add comments explaining your code
204-
- ✅ Include test cases
205-
- ✅ Update documentation if needed
206-
- ✅ Be respectful and inclusive
212+
#### Code Style
213+
- **Variables/Functions:** `lowercase_with_underscores`
214+
- **Classes:** `PascalCase`
215+
- **Constants:** `UPPERCASE`
216+
- Follow [PEP 8](https://pep8.org/) style guidelines
217+
218+
#### Commit Messages
219+
Use conventional commits format:
220+
```
221+
type: short description
222+
223+
Optional details
224+
```
225+
226+
**Types:**
227+
| Type | Description |
228+
|------|-------------|
229+
| `feat:` | New feature or example |
230+
| `fix:` | Bug fix |
231+
| `docs:` | Documentation changes |
232+
| `style:` | Formatting only |
233+
| `refactor:` | Code restructuring |
234+
| `test:` | Adding tests |
235+
236+
**Examples:**
237+
```
238+
feat: add list comprehension examples
239+
fix: correct typo in calculator.py
240+
docs: update README with quickstart guide
241+
```
242+
243+
#### Code Quality
244+
The project uses automated tools to ensure code quality:
245+
- **Black** - Code formatting
246+
- **Ruff** - Linting
247+
- **Bandit** - Security scanning
248+
249+
Run locally before submitting:
250+
```bash
251+
# Format code
252+
black .
253+
254+
# Lint code
255+
ruff check .
256+
257+
# Security scan
258+
bandit -r .
259+
```
207260

208261
### Need Help?
209262

210-
- 📖 [Contributing Guide](CONTRIBUTING.md)
211-
- 💬 [GitHub Discussions](https://github.com/hackdartstorm/Python/discussions)
212-
- 🐛 [Report an Issue](https://github.com/hackdartstorm/Python/issues)
213-
- 📧 [Contact Maintainers](mailto:learn@pythonmastery.dev)
263+
- 📖 [Contributing Guide](CONTRIBUTING.md) - Detailed guidelines
264+
- 💬 [GitHub Discussions](https://github.com/hackdartstorm/Python/discussions) - Ask questions
265+
- 🐛 [Report an Issue](https://github.com/hackdartstorm/Python/issues) - Bug reports & features
266+
- 📧 [Contact Maintainers](mailto:learn@pythonmastery.dev) - Direct contact
214267

215268
---
216269

exercises/1000_programs/medium/1880_word_sum.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,13 @@ def word_to_number(word: str) -> int:
66

77

88
def is_sum_equal(firstWord: str, secondWord: str, targetWord: str) -> bool:
9-
return word_to_number(firstWord) + word_to_number(secondWord) == word_to_number(targetWord)
9+
return word_to_number(firstWord) + word_to_number(secondWord) == word_to_number(
10+
targetWord
11+
)
1012

1113

1214
if __name__ == "__main__":
1315
# Exemplos básicos para teste manual
1416
print(is_sum_equal("acb", "cba", "cdb")) # True
15-
print(is_sum_equal("aaa", "a", "aaaa")) # True
16-
print(is_sum_equal("a", "b", "c")) # False
17+
print(is_sum_equal("aaa", "a", "aaaa")) # True
18+
print(is_sum_equal("a", "b", "c")) # False

0 commit comments

Comments
 (0)