This section contains documentation for developers working on Kepler.
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 Guide - Comprehensive guide on how Kepler measures and attributes power consumption to processes, containers, VMs, and pods
- Enhancement Proposals - Technical proposals for major features and changes to Kepler
- Pre-commit Setup - Setting up pre-commit hooks for code quality
- E2E Testing Guide - Running and writing end-to-end tests
- Release Process - Kepler release process and lifecycle
For general contribution guidelines, please refer to the main project documentation.