EnvX
Environment configuration management platform for secrets, API keys, version history, audit logs, and configuration drift detection.
- Python
- PostgreSQL
- React
- Docker
Schematic illustration.
Overview
EnvX is a personal project: a platform for managing environment configuration across projects and environments, including secrets and API keys, with version history, audit logs, and drift detection.
The Problem
Environment variables and secrets are often shared through ad-hoc files and messages. That makes it hard to know what changed, who changed it, and whether environments have drifted apart.
Architecture
Interface
- React dashboard
Backend
- Python API
Storage (PostgreSQL)
- Configuration & secrets
- Version history
- Audit log
Insights
- Drift detection across environments
How It Works
- 1
Store
Configuration and secrets are organised by project and environment.
- 2
Version
Every change creates a new version, so history can be compared.
- 3
Audit
Actions are recorded in an audit log for traceability.
- 4
Detect drift
Environments are compared to surface configuration drift.
My Contribution
- Designed and built the project end to end.
- Developed the Python backend and PostgreSQL data model.
- Built the React dashboard.
- Containerised the application with Docker.
Engineering Challenges
- Modelling versioned configuration so that history and comparisons stay simple to query.
- Treating secrets carefully throughout storage, display, and audit trails.
Lessons Learned
- Auditability and versioning are core features of configuration tooling, not add-ons.