A secure, version-controlled environment configuration manager for development teams. ConfMan helps you manage .env files across different environments with encryption, version control, and team access management.
- Git-style CLI for managing environment configs
- Per-environment secrets (dev, staging, prod)
- Version control and rollback capability
- Team access control
- End-to-end encryption
- REST API
- Web dashboard
- GitHub integration
- Backend: Django + Django REST Framework
- CLI: Go
- Database: SQLite (development) / PostgreSQL (production)
- Authentication: GitHub OAuth
- Python 3.8+
- Go 1.18+
- Virtual environment tool (venv)
- Clone the repository:
git clone https://github.com/icichainz/confman.git
cd confman- Set up Python virtual environment:
python -m venv .venv
source .venv/bin/activate # Linux/Mac
# or
.venv\Scripts\activate # Windows- Install dependencies:
pip install -r requirements.txt- Run migrations:
python manage.py migrate- Start the development server:
python manage.py runserverFrom the envctl directory:
go build
go installThe API endpoints are available at /api/ and include:
GET/POST /api/projects/GET/POST /api/environments/GET/POST /api/secrets/
- End-to-end encryption for all secrets
- Token-based authentication for API access
- Role-based access control
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.
See our roadmap for planned features and improvements.
- [Abel Koudaya] - Initial work - [https://github.com/icichainz/confman]
- Inspired by the need for better secrets management in development teams
- Built with Django and Go