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

53 lines
1.1 KiB
Markdown

# 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`:
```bash
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 `develop` → `master`
3. Master deploys to production automatically