65 lines
1.9 KiB
Markdown
65 lines
1.9 KiB
Markdown
# 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
|