One container. One port. One config file. Complete auth.
Aegion is a self-hosted identity and access platform. It replaces Auth0, the Ory stack, and Supabase Auth with a single Go binary you own and run yourself.
# Clone and start
git clone https://github.com/Astraive/Aegion
cd Aegion
docker-compose up -d
# Initialize admin user (first time only)
docker-compose exec aegion aegion bootstrap --admin-email admin@example.com
# Open admin panel
open http://localhost:8080/aegionAegion combines Go and Rust components in a single deployment:
- Core API (Go): Identity management, authentication, sessions
- Security Engine (Rust): Policy enforcement, cryptographic operations
- Admin Panel (Web): Identity management interface
- Unified Configuration: Single
aegion.yamlfile controls all modules
See docs/architecture.md for detailed internals.
See docs/development.md for local development setup, testing, and contribution guidelines.
We welcome contributions! Please:
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Follow our development guidelines
- Submit a pull request
See docs/ for complete documentation:
- Getting Started — Prerequisites and setup
- API Reference — Complete API documentation
- Development — Local development and testing
- Deployment — Production deployment guide
- Overview — High-level narrative and positioning
- Architecture — Go+Rust internals and runtime flow
- Security — Authentication and security controls
- Configuration —
aegion.yamlmodel and ownership split - Release Maturity Matrix — GA/Beta/Not-GA truth source
Hybrid-first release train (active)
- Source of truth for module maturity is
build/release-maturity.jsonand docs/release-maturity-matrix.md. - Current module mix is intentionally uneven: core/password/magic_link are stable, while standalone surfaces advance by maturity gate.