Files
shellmate/CONTRIBUTING.md
2026-01-27 15:13:28 +00:00

1.1 KiB

Contributing to ShellMate

Thanks for your interest in contributing! 🎉

Branch Strategy

feature/* ──→ develop ──→ master
                │            │
             staging      production
  • develop — Default branch, all PRs target here
  • master — Production releases only
  • feature/* — Feature branches off develop

Development Flow

  1. Fork the repo
  2. Create a feature branch from develop:
    git checkout develop
    git pull origin develop
    git checkout -b feature/my-feature
    
  3. Make your changes
  4. Run tests: pytest tests/ -v
  5. Run linting: ruff check src/
  6. Push and create a PR to develop

Code Style

  • Python 3.11+
  • Type hints required
  • Ruff for linting
  • 100 char line limit

Commit Messages

Use conventional commits:

  • feat: New feature
  • fix: Bug fix
  • docs: Documentation
  • refactor: Code refactor
  • test: Tests
  • chore: Maintenance

Release Process

  1. PRs merged to develop deploy to staging
  2. When ready, merge developmaster
  3. Master deploys to production automatically