Toggles: the easiest feature flagging in Swift

Toggles: the easiest feature flagging in Swift

I previously wrote about JustTweak here. It's the feature flagging mechanism we've been using at Just Eat to power the iOS consumer apps since 2017. It's proved to be very stable and powerful and it has evolved over time. Friends have heard me promoting it vehemently and some have integrated it with success and appreciation. I don't think I've promoted it in the community enough (it definitely deserved more) but marketing has never been my thing.

Anyway, JustTweak grew old and some changes were debatable and not to my taste. I have then decided to use the knowledge of years of working on the feature flagging matter to give this project a new life by rewriting it from scratch as a personal project.

And here it is: Toggles.

Think of JustTweak, but better. A lot better. Frankly, I couldn't have written it better. Here are the main highlights:

  • brand new code, obsessively optimized and kept as short and simple as possible
  • extreme performances
  • fully tested
  • fully documented
  • performant UI debug view in SwiftUI
  • standard providers provided
  • demo app provided
  • ability to listen for value changes (using Combine)
  • simpler APIs
  • ToggleGen CLI, to allow code generation
  • ToggleCipher CLI, to allow encoding/decoding of secrets
  • JustTweakMigrator CLI, to allow a smooth transition from JustTweak

Read all about it on the repo's README and on the DocC page.

It's on Swift Package Index too.

Toggles – Swift Package Index
Toggles by TogglesPlatform on the Swift Package Index – Toggles is an elegant and powerful solution to feature flagging for Apple platforms.

There are plans (or at least the desire!) to write a backend with Andrea Scuderi. That'd be really nice!