# Development Guide ## Document Purpose This document provides guidance for developers working on the Aniworld project. ### What This Document Contains - **Prerequisites**: Required software and tools - **Environment Setup**: Step-by-step local development setup - **Project Structure**: Source code organization explanation - **Development Workflow**: Branch strategy, commit conventions - **Coding Standards**: Style guide, linting, formatting - **Running the Application**: Development server, CLI usage - **Debugging Tips**: Common debugging approaches - **IDE Configuration**: VS Code settings, recommended extensions - **Contributing Guidelines**: How to submit changes - **Code Review Process**: Review checklist and expectations ### What This Document Does NOT Contain - Production deployment (see [DEPLOYMENT.md](DEPLOYMENT.md)) - API reference (see [API.md](API.md)) - Architecture decisions (see [ARCHITECTURE.md](ARCHITECTURE.md)) - Test writing guides (see [TESTING.md](TESTING.md)) - Security guidelines (see [SECURITY.md](SECURITY.md)) ### Target Audience - New Developers joining the project - Contributors (internal and external) - Anyone setting up a development environment --- ## Sections to Document 1. Prerequisites - Python version - Conda environment - Node.js (if applicable) - Git 2. Getting Started - Clone repository - Setup conda environment - Install dependencies - Configuration setup 3. Project Structure Overview 4. Development Server - Starting FastAPI server - Hot reload configuration - Debug mode 5. CLI Development 6. Code Style - PEP 8 compliance - Type hints requirements - Docstring format - Import organization 7. Git Workflow - Branch naming - Commit message format - Pull request process 8. Common Development Tasks 9. Troubleshooting Development Issues