Sunday, October 25, 2026 4,350 lists 78,100 records on file
List your app or device

  1. Home
  2. Debuggers
  3. FLEX

FLEX

What it is

FLEX is a free, open-source tool for inspecting and debugging iOS apps while they run. It adds a toolbar in a window above the app, where developers can examine and change application state. FLEX can inspect views, find live objects in memory, display their properties and ivars, modify them, and call methods. Its network history shows timing, headers, and responses for requests made through NSURLConnection or NSURLSession. Developers can also browse an app’s bundle and sandbox, explore SQLite and Realm databases, and view or change NSUserDefaults values, including strings, numbers, arrays, and dictionaries.

FLEX runs inside the app, in the iOS Simulator or on physical iOS devices, without an LLDB or Xcode connection or a remote debugging server. It supports Objective-C and Swift, and installation options include CocoaPods, Carthage, Buck, manual Xcode integration, and Swift Package Manager. Apps must target iOS 9 or higher. The project advises excluding FLEX from Release builds; it does not support tvOS out of the box.

For and against

For

  • Inspects and modifies views and live objects.
  • Shows network request timing, headers, and responses.
  • Browses SQLite, Realm, bundle, and sandbox contents.
  • Works in simulators and on physical iOS devices.
  • Free and open source.

Against

  • Requires an iOS 9-or-higher app target.
  • Does not support tvOS out of the box.
  • Project advises excluding it from Release builds.

The verdict

FLEX brings a broad set of inspection tools into the running iOS app, without requiring an LLDB or Xcode connection. Its iOS target requirement and Release-build caution are important constraints for teams considering it.

Who it suits

FLEX suits iOS developers who need to inspect and change app state during development. It is aimed at Objective-C and Swift projects targeting iOS 9 or higher.

Plans and prices

FLEX

Free

Open-source iOS debugging library · iOS 9 or higher

Every plan, in full

On the record

App settings
It can view and dynamically modify NSUserDefaults values.github.com · read 7 Oct 2026
Contributions
The project welcomes pull requests and directs contributors to its contributing guide.engineering.flipboard.com · read 8 Oct 2026
Device use
The maker says FLEX works in the simulator and on physical devices.engineering.flipboard.com · read 7 Oct 2026
File and database browsers
It can browse the app’s sandbox files and SQLite or Realm databases.github.com · read 8 Oct 2026
File and database browsing
FLEX can browse the app bundle or sandbox, and explore SQLite and Realm databases.github.com · read 7 Oct 2026
Heap exploration
FLEX can scan live allocated memory for objects and let developers inspect them.github.com · read 8 Oct 2026
How it works
It presents a toolbar in a window above the running app, where developers can view and modify application state.github.com · read 7 Oct 2026
In-app toolbar
It displays a toolbar in a window above the app, where developers can view and modify application state.github.com · read 8 Oct 2026
Installation
The project documents installation through CocoaPods, Carthage, Buck, manual Xcode integration, and Swift Package Manager.github.com · read 8 Oct 2026
Intended users
The maker describes FLEX as a tool for iOS development and debugging.github.com · read 7 Oct 2026
License and contributions
Flipboard announced FLEX as open source and welcomed pull requests.engineering.flipboard.com · read 7 Oct 2026
Minimum target
FLEX requires an app that targets iOS 9 or higher.github.com · read 8 Oct 2026
Network debugging
Its network history can show requests made using NSURLConnection or NSURLSession, including timing, headers, and responses.github.com · read 7 Oct 2026
Network history
Network debugging can show request timing, headers, and full responses for requests made using NSURLConnection or NSURLSession.github.com · read 8 Oct 2026
NSUserDefaults
Developers can view and dynamically modify NSUserDefaults values; supported editable values include strings, numbers, arrays, and dictionaries.github.com · read 8 Oct 2026
Object inspection
It can find live objects on the heap, show their properties and ivars, modify them, and call methods.github.com · read 7 Oct 2026
Operation
FLEX runs inside the app and works in both the simulator and on physical devices without an LLDB/Xcode connection or remote debugging server.engineering.flipboard.com · read 8 Oct 2026
Platform limit
FLEX does not support tvOS out of the box.github.com · read 7 Oct 2026

The review

FLEX is an open-source debugging library for iOS apps, best suited to developers who need to inspect a running app on a simulator or device. Its appeal is the breadth of runtime inspection it brings inside the app; its narrow iOS focus and Release-build caution make it a development-only choice.

Overview

FLEX opens a toolbar in a window above the running app, letting developers examine and change application state in place. Because it runs within the app, it does not need an LLDB or Xcode connection or a remote debugging server while in use. That can simplify debugging on a physical device as well as in the simulator, though it also means FLEX must be integrated into the app being inspected.

The project is open source, welcomes pull requests, and documents integration through CocoaPods, Carthage, Buck, manual Xcode integration, and Swift Package Manager. FLEX requires a target of iOS 9 or higher. Its maintainers advise keeping it out of Release builds: exposing the tool to app users is not recommended and may lead to App Store rejection.

Key features

Inspect live views and objects

FLEX can inspect and modify views in the hierarchy, and scan live allocated memory for objects. Developers can examine object properties and ivars, change them, and call methods. This concentration of runtime access is useful when investigating state directly in a running app; it is not a replacement for a debugger connection when that workflow is required.

Trace network activity

Network history shows timing, headers, and full responses for requests made through NSURLConnection or NSURLSession. The supported API scope is a meaningful boundary: teams whose networking bypasses those interfaces should not assume FLEX will provide the same visibility.

Browse files, databases, and settings

FLEX can browse the app bundle and sandbox, explore SQLite and Realm databases, and view or dynamically edit NSUserDefaults values. Editable defaults include strings, numbers, arrays, and dictionaries. These tools make it practical to inspect persisted app data and settings without leaving the running app, while remaining specific to the formats and settings FLEX supports.

Pricing

FLEX is free: its open-source iOS debugging library costs nothing. There is no paid tier or free trial. The single plan is a fit for iOS teams that can integrate the library and meet its platform requirements; there are no cheaper plans with reduced features to weigh against it.

Platforms

FLEX supports iOS Simulator and physical iOS devices, and is intended for apps written in Objective-C or Swift. An app must target iOS 9 or later. It does not support tvOS out of the box; teams targeting tvOS would need to consider third-party ports rather than assume direct compatibility.

Who it's for

FLEX is for iOS developers who want in-app access to views, live objects, network history, files, databases, and user defaults during development. It is especially apt when avoiding an LLDB, Xcode, or remote-server connection during use matters. It is not a sound fit for teams that need tvOS support, target below iOS 9, or want to expose a debugging interface in a release app.

Pros and cons

  • Broad runtime inspection: Views, heap objects, app files, supported databases, network requests, and user defaults can all be examined from the running app.
  • No separate debugging connection in use: FLEX works inside the app on simulators and physical devices without LLDB, Xcode, or a remote debugging server connection.
  • Open source and free: The free plan and welcomed contributions make it accessible to teams able to integrate and maintain it.
  • Strict platform boundaries: FLEX requires iOS 9 or higher and does not support tvOS out of the box.
  • Release builds need care: The project advises excluding FLEX from Release builds because user exposure is not recommended and may risk App Store rejection.

Alternatives

For a broader debugging alternative, LLDB is free and supports Android, iOS, Linux, macOS, and Windows. Choose it when cross-platform availability matters more than FLEX's in-app inspection approach. PonyDebugger is another free option, with an iOS client and gateway server for teams looking for that client-and-server arrangement.

RenderDoc is free and open source under the MIT license, with Android, Linux, and Windows support; it is an option when those platforms are the priority rather than FLEX's iOS scope. IDA Pro offers a free plan with x86-32 and x86-64 disassembly, two cloud-based decompilers, and a named license on macOS, Linux, and Windows; its Pro Essential plan costs $1,099. Consider it when that disassembly and decompilation scope is the need.

Perl Debugger is included with Perl and requires the program to compile correctly before debugging. pyOCD is a free Apache 2.0 open-source project. Black Magic Debug is a free JTAG/SWD debugger for embedded microcontrollers that requires compatible probe hardware and a suitable toolchain. FlowStorm is free as in speech, with no money involved and no restrictions on use. For more choices, browse Debuggers.

Verdict

Choose FLEX if you develop iOS apps and want a free, in-app toolkit for inspecting and changing runtime state without a separate debugging connection. Its combination of view, object, network, file, database, and settings inspection is the main reason to adopt it. Look elsewhere if you need tvOS support, a target below iOS 9, or a tool that can safely remain exposed in a Release build.

Alternatives to FLEX

Every alternative, ranked