Something broke? Switch it off.
Signal is release control for your team. Put new code behind a flag, decide who sees it, and when something misbehaves, turn it off for everyone. Every connected app follows in under a second.
| Flag | Development | Staging | Production |
|---|---|---|---|
New checkout new-checkout | On · 100% | On · 50% | Off · everyone gets false |
Button color button-color | On · 50 / 50 | On · 50 / 50 | On · green |
Promo banner promo-banner | On · 1 rule | On · 1 rule | Off |
A release with Signal, start to finish.
- 1
Ship it dark
Merge the new code behind a flag that’s off. It reaches production and nobody sees it.
- 2
Try it on your team
List your own user keys as targets, or add a rule for your company’s email domain.
- 3
Roll it out
5%, then 25%, then everyone. Raising the percentage only adds people; nobody flips back.
- 4
Switch it off if needed
One toggle sends everyone back to the old path. Your rollout is kept for when it’s fixed.
- 5
Clean up
At 100% for long enough, delete the check from your code and archive the flag.
Know who changed what.
Every change is saved together with its audit entry, so nothing goes unrecorded. Roles decide who can touch production: owners, admins, members and viewers.
- Sara turned off New checkout in Production
- Bilal raised New checkout to 25% in Production
- Bilal added a rule to Promo banner in Staging
- Ayesha invited john@shop.example as a viewer
Self-hosted, with an SDK that keeps working when Signal is down.
Run the API, dashboard, Postgres and Redis on your own infrastructure. Servers evaluate flags in memory and cache the last rules on disk; browsers get only each user’s values.