
You want to change flags without a redeploy.
The open-source, single-binary feature flag server for indie hackers and micro-SaaS. Self-hosted, lightweight, and built for speed.
More than env vars, less than a platform.
Env Vars
Static configuration that requires a full application redeploy to change. Zero user targeting or safe rollout capabilities.
SafeLaunch
Single Go binary with embedded SQLite. Provides instant UI toggles and powerful targeted rollouts with near-zero operational overhead.
Enterprise Platforms
Expensive, complex platforms requiring dedicated teams to manage. Overkill for indie hackers and small, fast-moving teams.
Everything you need. Nothing you don't.
Kill-switches
Instantly disable broken features in production without waiting for CI/CD pipelines to finish rolling back.
Canary Rollouts
Gradually expose new functionality to a percentage of your traffic to monitor performance safely.
User Targeting
Target features by specific user IDs, email domains, or custom JSON traits passed from your client.
Embedded Dashboard
A snappy React + Vite frontend baked directly into the Go binary. No separate deployment needed.
CLI & SDKs
Manage flags from your terminal or integrate seamlessly with our lightweight TypeScript SDK.
Single Binary
Embedded SQLite means zero external database dependencies. Just download the binary and run it.
From zero to flags in seconds.
No complicated setup. Pull the image, run the container, and start using flags immediately via our SDK.
Read the full docsarrow_forward# Start the serverdocker run -p 8080:8080 safelaunch/server# In your appimport{ SafeLaunch }from'@safelaunch/sdk'
constclient =newSafeLaunch('http://[your-hostname]:8080')
constflag = client.get('new-feature')