Garlic | |
A drag-n-drop remote configuration framework for iOS |
Features:
- Easy 1-line integration
- ZERO libraries required (not even AFNetworking!)
- Remote feature flags
- Local settings fallback
- Custom remote settings
- Force updates
- No collisions with other frameworks
Setup:
In most cases, you want to load remote settings either in the lifecycle events in your AppDelegate or ViewController, or anywhere else you like:
- #import “Garlic.h”
- Init and setup Garlic with a remote settings plist URL and a completion block: [[Garlic sharedInstance] setupWithRemoteConfigURL:@”{{your-remote-settings-plist-url-here.com}}” completionHandler:^(void){ // code to run when setup was done }
Force update:
Determine if the app should be updated, based on build numbers
if ([[Garlic sharedInstance] shouldForceUpdateApp]) { // ask user to update app }
Feature flags:
Check if a feature should be activated
if ([[Garlic sharedInstance] shouldAllowFeature:@"{{your-feature-name-here}}"]) { // show the button/menu that enables that feature}
Custom values:
Get remote values for your custom purposes
NSString *tipOfTheDay = [[Garlic sharedInstance] getSettingForKey:@"TipOfTheDay-2015-11-27"]
Future features:
- Force synchronous url request
- Load settings from JSONs and XMLs, in addition to plists
- POST remote settings: change remote settings in the server when shaking the device
- Web-based remote settings editor
- Push updates: engage a remote settings update using a push notification
- Targeted Feature Flags: toggle features for specific user IDs, geolocations, device models..
Made with <3 by Nur Nachman - nur.xyz