Skip to content

Latest commit

 

History

History
127 lines (101 loc) · 3.18 KB

CONTRIBUTING.md

File metadata and controls

127 lines (101 loc) · 3.18 KB

🤝 Contributing to Git-A-Head

PRs Welcome Contributors Contributors License

Thank you for considering contributing to Git-A-Head! 🎉

📋 Table of Contents

📜 Code of Conduct

This project and everyone participating in it is governed by our Code of Conduct. By participating, you are expected to uphold this code.

🚀 Getting Started

1️⃣ Fork & Clone

# Fork the repository on GitHub
git clone https://github.com/AmirHaytham/git-a-head.git
cd git-a-head

2️⃣ Set Up Development Environment

# Create virtual environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

3️⃣ Create Feature Branch

git checkout -b feature/your-feature-name

🔄 Development Process

  1. 📝 Choose an Issue

    • Look for open issues or create a new one
    • Comment on the issue to get assigned
  2. 🛠️ Make Changes

    • Write clean, documented code
    • Follow style guidelines
    • Add tests if applicable
  3. Test Your Changes

    # Run tests
    pytest
    
    # Check code style
    pylint *.py
    black .
  4. 📚 Update Documentation

    • Update relevant README files
    • Add comments to your code
    • Update workshop content if needed

🔍 Pull Request Process

  1. 📦 Prepare Your Changes

    git add .
    git commit -m "✨ Add: Brief description of your changes"
    git push origin feature/your-feature-name
  2. 📋 Create Pull Request

    • Use the PR template
    • Link related issues
    • Add meaningful description
  3. 👀 Code Review

    • Address review comments
    • Make requested changes
    • Keep discussion constructive
  4. 🎉 Merge

    • Squash commits if needed
    • Delete feature branch
    • Celebrate your contribution! 🎊

📝 Style Guidelines

Commit Messages

  • Use emoji prefixes
  • Be descriptive but concise
  • Reference issues when applicable

Python Code

  • Follow PEP 8
  • Use type hints
  • Write docstrings
  • Add comments for complex logic

Documentation

  • Use clear language
  • Include code examples
  • Add screenshots if helpful
  • Keep formatting consistent

🎯 Areas for Contribution

  • 🐛 Bug fixes
  • ✨ New features
  • 📚 Documentation improvements
  • 🎨 UI enhancements
  • 🧪 Test coverage
  • 🌐 Localization

💡 Need Help?

  • 💬 Join our discussions
  • 📧 Contact maintainers
  • 📖 Check documentation
  • 🤔 Ask questions in issues

Created by AmirHaytham for the Git-A-Head Workshop