# Contributing to JIGAIDO ## Development Setup ```bash git clone https://git.fbrns.co/shoko/jigaido.git cd jigaido # Create virtual environment python -m venv venv source venv/bin/activate # Install dependencies pip install -r apps/telegram-bot/requirements.txt # Run tests pytest # Run bot export JIGAIDO_BOT_TOKEN="your_bot_token" python -m apps.telegram-bot.bot ``` ## Architecture JIGAIDO follows hexagonal architecture: - **Core** (`core/`): Pure domain logic - models, ports (interfaces), and services - **Adapters** (`adapters/`): Infrastructure implementations - storage adapters - **Apps** (`apps/`): CLI applications - Telegram bot ## Code Style - Python 3.10+ with type hints - Async/await for Telegram handlers - Docstrings for public functions - Follow existing code patterns ## Pull Request Workflow 1. Branch from `main` 2. Make changes 3. Test locally with `pytest` 4. Open PR with description of what changed and why 5. Someone reviews and merges ## Issues Use GitHub Issues for bugs and feature requests. Please be specific — include error messages, steps to reproduce, and your environment.