A modern configuration management platform with format flexibility and version control, built with Go backend and SvelteKit frontend.
Conflux is a comprehensive configuration management solution that allows you to manage configuration files across multiple formats (YAML, JSON, TOML, ENV) with built-in version control, template support, and format conversion capabilities.
- Backend: Go with clean architecture (cmd/internal structure)
- Frontend: SvelteKit with TypeScript
- Database: Support for both MySQL and PostgreSQL
- Authentication: JWT-based authentication
- Containerization: Docker and Docker Compose ready
├── backend/ # Go backend application
│ ├── cmd/ # Application entry points
│ ├── internal/ # Private application code
│ └── pkg/ # Public packages
├── frontend/ # SvelteKit frontend application
│ └── src/ # Source code
├── scripts/ # Development scripts
└── docker-compose.yml # Container orchestration
-
Setup environment:
chmod +x scripts/setup.sh ./scripts/setup.sh
-
Start development environment:
make dev
-
Access the application:
- Frontend: http://localhost:3000
- Backend API: http://localhost:8080
make dev- Start full development environmentmake backend-dev- Run backend onlymake frontend-dev- Run frontend onlymake test- Run all testsmake migrate- Run database migrationsmake clean- Clean up containers and volumes
Copy .env.example to .env and configure your environment variables:
cp .env.example .envThe application supports both MySQL and PostgreSQL. Configure the database type in your environment variables:
- Set
DB_TYPE=mysqlfor MySQL - Set
DB_TYPE=postgresfor PostgreSQL
The REST API provides the following endpoints:
POST /api/auth/login- User loginPOST /api/auth/register- User registrationGET /api/users/profile- Get user profilePUT /api/users/profile- Update user profile
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests
- Submit a pull request
This project is licensed under the MIT License.