Dynamic Settings is a lightweight, real-time configuration management service written in rust that allows you to store and update settings dynamically without redeploying your application. It provides a web-based UI and an API to manage settings efficiently.
https://markantipin.github.io/dynamic-settings/
docker pull markantipin12/dynamic-settings
docker run -d -p 18100:18100 -v db_data:/app/db markantipin12/dynamic-settings
open http://localhost:18100
The Swagger API documentation is available at /docs endpoint:
http://localhost:18100/docs
- Real-time Configuration – Modify settings in real-time without restarting your application
- Built with Rust – Designed for speed and safety
- User-Friendly UI – Manage settings through an intuitive web interface
- API-Driven – A RESTful API for programmatic access to settings
Environment variables
APPLICATION_PORT=18100 # The port on which the application (default: 18100)
API_KEY=api-key # The API key to access the API (default: api-key)
DATABASE_URL=sqlite://dynamic-settings.db # The database url (default: sqlite://dynamic-settings.db)
docker build -t dynamic-settings .
docker run -d -p 18100:18100 dynamic-settings
Run
cargo run
Test
cargo test
Linter
cargo clippy --all-targets --all-features
create .env file in the ui folder with:
VITE_API_URL=http://localhost:18100/api
Install dependencies
cd ui
npm install
Run
npm run dev
Build
npm run build
Test
npm test
Linter
npm run lint