FtrIO is presented as an alternative approach to feature flags in .NET, aiming to reduce “if (IsEnabled…)” noise and manual drift between code and configuration. Instead of wrapping each call site with flag checks, the core library uses a [Toggle] attribute on methods, and uses compile-time weaving to inject the gating logic into the method IL. In the example, calling the method behaves like a normal call, but the method body does not execute when the corresponding key in appsettings.json is false. FtrIO also includes a Roslyn analyzer that validates toggle configuration at build time, failing the build if a decorated method has no matching entry in the Toggles section.

For async methods, [ToggleAsync] is designed to remain safely awaitable when disabled. The library supports more than booleans, including percentage rollout and blue/green switching via strategy-based configuration. To manage and audit toggles, the ecosystem includes FtrIO.Toaster, a self-hosted Docker web UI with an audit log and multi-environment support, and FtrIO.onetwo, a global CLI that audits “what is live” and reports missing or mismatched toggles. In an experimental release, FtrIO.onetwo also offers import and migration features to pull current flag states from LaunchDarkly, Flagsmith, or other sources into appsettings.json and generate migration guidance.