Developer Guide
Welcome to the Archery Apprentice Developer Guide! This section contains technical documentation for developers contributing to the project.
Status: 🚧 Content migration in progress
Getting Started
New to the codebase? Start here:
- Getting Started Guide - Complete setup and onboarding guide ✨ NEW
- System Architecture - Understand the codebase organization
- Contributing - How to contribute to the project
Architecture
Understand how Archery Apprentice is built:
Core Architecture
- Architecture Overview - High-level system design (Coming soon)
- MVVM Pattern - ViewModel and UI architecture (Coming soon)
- Repository Pattern - Data access layer (Coming soon)
Layers
- UI Layer - Jetpack Compose UI (Coming soon)
- Domain Layer - Business logic (Coming soon)
- Data Layer - Room database & repositories (Coming soon)
Diagrams
- System Architecture Diagram (Coming soon)
- Data Flow Diagrams (Coming soon)
- Component Diagrams (Coming soon)
Development Guides
Step-by-step guides for common development tasks:
Adding Features
- Add a New Feature - End-to-end feature development (Coming soon)
- Add a New Screen - Create a new UI screen (Coming soon)
- Add a New Repository - Implement data access (Coming soon)
Best Practices
- Code Style Guide (Coming soon)
- Compose Best Practices (Coming soon)
- Repository Best Practices (Coming soon)
- Testing Best Practices (Coming soon)
Working With
- Room Database - Database development (Coming soon)
- Firebase - Firebase integration (Coming soon)
- Compose UI - UI development (Coming soon)
- ViewModels - State management (Coming soon)
API Reference
Technical reference for key components: ✨ NEW SECTION
Quick links:
- ViewModels - UI state management (21 ViewModels)
- Repositories - Data access layer (17 Repositories)
- Services - Business logic services (19 Services)
- DAOs - Database access objects (15 DAOs)
Top documented components:
Testing
Comprehensive testing documentation:
- Testing Strategy - Overall testing approach (Coming soon)
- Unit Testing - Writing unit tests (Coming soon)
- Integration Testing - Integration test guide (Coming soon)
- UI Testing - Compose UI testing (Coming soon)
- Test Infrastructure - Test utilities and helpers (Coming soon)
CI/CD
Continuous integration and deployment:
- GitHub Actions Workflows (Coming soon)
- Build Configuration (Coming soon)
- Deployment Process (Coming soon)
- Self-Hosted Runners (Coming soon)
Advanced Topics
Deep dives into specific areas:
- KMP Migration - Kotlin Multiplatform migration project
- Performance Optimization (Coming soon)
- Architecture Decisions - ADR documentation
- Tech Debt (Coming soon)
Tools & Resources
Development tools and utilities:
- IDE Setup - Android Studio configuration (Coming soon)
- Debugging Tools (Coming soon)
- Code Generation (Coming soon)
Need User Documentation?
If you’re looking for user-facing documentation:
→ User Guide - App usage and features
Contributing
Ready to contribute?
- Read CONTRIBUTING.md (Coming soon)
- Check the Good First Issues
- Join the Discussion
Last Updated: 2025-10-31 Phase: Structure created, content migration pending