dif.sh
Put feature flags and A/B tests in the repo for Git review
About dif.sh
dif.sh stores each feature flag or A/B test as a Markdown file in the repository, with Git version control and PR review. Its file format and CLI integrate audience segmentation, conflict checks, analytics, and cleanup; include or exclude users by country, plan, or returning visitor. The build process resolves the exclusion graph and blocks conflicting online tests from compiling in CI.
Best for
Best use cases
Feature flag management
A/B testing and phased rollouts
Targeting by country, plan, or returning visitor
Blocking experiment conflicts in CI
Features
Repository-based configuration
Each feature flag or A/B test uses one Markdown file, stored with code and reviewable via Git and PR.
Audience targeting
Declare audience attributes to include or exclude users by country, plan, or returning visitor.
Conflict checks
The build resolves the exclusion graph and rejects compilation when two online tests may collide for the same user.
Scriptable CLI
After installation, point to a feature flag or experiment ID to publish; compact, scriptable commands suit coding agents.
Pros
- Config and code in the same repo, reviewable via PR
- Segmentation, conflict checks, analytics, and cleanup integrated into the file format and CLI
- Pass audience attributes at runtime without committing customer lists
- Conflicts caught during the CI build