Tiny feature flag server.
- Fast: Built with FastAPI and SQLite.
- Tiny: Less than 1k lines of code.
- No external dependencies: Uses SQLite database
- Easy deployment: Deploy with coolify or grab the docker image.
I currently run nvxz.flags on coolify, but you can grab the alpine image and run it wherever you like.
More detailed API docs are available on swagger at /docs/ after install.
POST /users/
{
"username": "john",
"password": "jingleheimersmith"
}
name type data type description username required string Username on the platform password required string Password for login
http code content-type response 201application/json<User object returned>400application/json{"detail": "Bad Request"}409application/json{"detail": "Username is taken"}
curl -X POST -H "Content-Type: application/json" --data @post.json http://localhost:8000/users/
POST /auth/token/ OAuth2 Schema
name type data type description grant_type required string Part of OAuth2 scheme. Set to "password" username required string Username on the platform password required string Password for login
http code content-type response 200application/json<session token returned>400application/json{"detail": "Invalid username or password"}
curl -X 'POST' 'https://localhost:8000/auth/token' \ -H 'accept: application/json' \ -H 'Content-Type: application/x-www-form-urlencoded' \ -d 'grant_type=password&username=test&password=test'