I previously wrote about JustTweak here. It's the feature flagging mechanism we've been using at Just Eat Takeaway.com 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.
I never tweeted about this side project of mine 😜
— Alberto De Bortoli (@albertodebo) March 23, 2023
It's like JustTweak (feature flagging), but sensibly better. https://t.co/bdGWuUyQEU #Swift #iOS #macOS
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.

There are plans (or at least the desire!) to write a backend with Andrea Scuderi. That'd be really nice!
@albertodebo This wasn't planned! It looks like we need to build the backend for #Toggles with #Breeze! pic.twitter.com/OxNovRl70L
— andreascuderi (@andreascuderi13) March 26, 2023