Developer Documentation
This section contains documentation for developers working on Kepler.
🏗️ Architecture Documentation
Start here to understand Kepler's design and implementation:
- Architecture Overview - Complete architectural documentation
- Design Principles - The fundamental principles that drive all architectural decisions
- System Components - Deep dive into each architectural layer and component
- Data Flow & Attribution - Power attribution algorithm and data flow patterns
- Concurrency & Thread Safety - Thread safety guarantees and concurrent processing
- Interfaces & Contracts - Key interfaces, service contracts, and API boundaries
- Configuration System - Hierarchical configuration and option management
Power Attribution
- Power Attribution Guide - Comprehensive guide on how Kepler measures and attributes power consumption to processes, containers, VMs, and pods
Enhancement Proposals
- Enhancement Proposals - Technical proposals for major features and changes to Kepler
Development Workflow
- Pre-commit Setup - Setting up pre-commit hooks for code quality
Release Management
- Release Process - Kepler release process and lifecycle
Contributing
For general contribution guidelines, please refer to the main project documentation.