{"id":18389287,"url":"https://github.com/rightpoint/rzdebugmenu","last_synced_at":"2025-12-12T06:09:32.243Z","repository":{"id":17602800,"uuid":"20406592","full_name":"Rightpoint/RZDebugMenu","owner":"Rightpoint","description":"Configurable debug menu for iOS apps","archived":false,"fork":false,"pushed_at":"2017-02-23T19:52:55.000Z","size":2080,"stargazers_count":20,"open_issues_count":5,"forks_count":2,"subscribers_count":34,"default_branch":"master","last_synced_at":"2025-08-25T20:04:42.214Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Objective-C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Rightpoint.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-06-02T14:21:53.000Z","updated_at":"2019-12-16T07:42:04.000Z","dependencies_parsed_at":"2022-09-03T14:22:16.271Z","dependency_job_id":null,"html_url":"https://github.com/Rightpoint/RZDebugMenu","commit_stats":null,"previous_names":["raizlabs/rzdebugmenu"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/Rightpoint/RZDebugMenu","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rightpoint%2FRZDebugMenu","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rightpoint%2FRZDebugMenu/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rightpoint%2FRZDebugMenu/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rightpoint%2FRZDebugMenu/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Rightpoint","download_url":"https://codeload.github.com/Rightpoint/RZDebugMenu/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rightpoint%2FRZDebugMenu/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273272591,"owners_count":25075991,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-02T02:00:09.530Z","response_time":77,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-06T01:42:24.996Z","updated_at":"2025-12-12T06:09:26.836Z","avatar_url":"https://github.com/Rightpoint.png","language":"Objective-C","funding_links":[],"categories":[],"sub_categories":[],"readme":"RZDebugMenu\n===========\n\n[![Build Status](https://travis-ci.org/Raizlabs/RZDebugMenu.svg)](https://travis-ci.org/Raizlabs/RZDebugMenu)\n\n`RZDebugMenu` gives you an easy way to add tweakable, debug-only preferences or settings to your application. This is useful for many settings you often want to change during development, but never in production, such as whether you are using a `staging` or `production` API endpoint.\n\n`RZDebugMenu` is configured via Settings Bundle plist file, just like the ones you create for adding your (release build) settings to Settings.app. It supports almost all the Settings Bundle schema defined [here] (https://developer.apple.com/library/prerelease/ios/documentation/PreferenceSettings/Conceptual/SettingsApplicationSchemaReference).\n\nOnce you configure it at the start of your application, `RZDebugMenu` shows your menu automatically on a two-finger, three-tap gesture.\n\n## Usage\n\n### Setup\n\n`RZDebugMenu` is driven off of a Settings bundle plist file, so the first thing you should is create this Plist and add it to your project.\n\nTo set up RZDebugMenu, add the following code to your Applcation Delegate's `application:didFinishLaunchingWithOptions:` method.\n\n```objc\n\t#if (DEBUG)\n\t    // To activate the debug menu, call this method with the name of the settings plist you want to use. It should be included in your application bundle.\n\t    [RZDebugMenu enableMenuWithSettingsPlistName:@\"debug_settings\"];\n\t#endif\n```\n\t\nOnce you have your window, to set up the two-finger, three-tap gesture to show the menu, add the following code:\n\n```objc\n\t#if (DEBUG)\n    // To configure automatic show and hide of the debug menu via a 4-tap gesture, call this method with your app's primary window.\n    [[RZDebugMenu sharedDebugMenu] registerDebugMenuPresentationGestureOnView:self.window];\n\t#endif\n```\n\t\n### Accessing Settings\n\t\nYou can now access your debug settings via `RZDebugMenuSettings`.\n\n```objc\n\t[RZDebugMenuSettings sharedSettings][@\"my_setting_key\"]\n```\n\t\nYou can also use standard KVO on `RZDebugMenuSettings` to access settings, and to watch for changes.\n\n```objc\n\tNSNumber *namePreference = [[RZDebugMenuSettings sharedSettings] valueForKey:@\"name_preference\"];\n\t[[RZDebugMenuSettings sharedSettings] addObserver:self forKeyPath:@\"name_preference\" options:NSKeyValueObservingOptionInitial | NSKeyValueObservingOptionNew context:NULL];\n```\n\t\nFinally, you can detect changes in settings via an `NSNotification`, if you prefer that over KVO.\n\n```objc\n    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(settingsChanged:) name:kRZDebugMenuSettingChangedNotification object:nil];\n```\n\nThis notification will contain keys that describe the setting that has been changed, as well as the previous and new values.\n\n### Advanced Usage\n\nCheck the sample application for some patterns of advanced usage. Including:\n\n- Changing the way settings are stored (whether they are isolated from or connected to your normal `NSUserDefaults.`)\n- Manually showing and dismissing the menu.\n\n## Try It\n\nTo try `RZDebugMenu`, install [CocoaPods](http://cocoapods.org) and run\n```sh\npod try RZDebugMenu\n```\n\n## Installation\n\n`RZDebugMenu` is available through [CocoaPods](http://cocoapods.org). To install, simply add the following line to your `Podfile`:\n```ruby\npod RZDebugMenu\n```\n\n## Authors\n\nCurrent Maintainer:\n\n- Michael Gorbach, michael.gorbach@raizlabs.com\n\nPrevious Maintainers:\n\n- Clayton Reick\n- Nicholas Donaldson\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frightpoint%2Frzdebugmenu","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frightpoint%2Frzdebugmenu","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frightpoint%2Frzdebugmenu/lists"}