Skip to content
Debug Networking
Branch: develop
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
Cauli #185 only handle records when cauli is enabled May 17, 2019
CauliTests #143 added unit test for preStorageRecordModifier Mar 2, 2019
Cauliframework.xcodeproj Moved network error code to string conversion to NSError extension Apr 28, 2019
Draft.playground First draft of the new cauli Jul 6, 2018
Pods Updated the Frameworks Podfile to the new Project name Feb 13, 2019
.gitignore Adding a basic jazzy configuration and some additional documentation Oct 23, 2018
.travis.yml Prepared 1.0.1 release May 23, 2019
Cauliframework.podspec Prepared 1.0.1 release May 23, 2019
LICENSE #10 added basic Podspec to support CocoaPod Jul 21, 2018
Podfile Updated the Frameworks Podfile to the new Project name Feb 13, 2019
Podfile.lock Updated the Frameworks Podfile to the new Project name Feb 13, 2019 Added additional setup instructions to (#184) Apr 26, 2019


Build Status CocoaPods Compatible License MIT Jazzy documentation

Cauli is a network debugging framework featuring a plugin infrastructure to hook into selected request and responses as well as recording and displaying performed requests. It provides a wide range of possibilities. For example from inspecting network traffic to mock UnitTests. Missing something fancy? How about writing your own Plugin.


🌏 Hooks into the URL Loading System
🧩 Existing set of Plugins (Florets)
🔧 Extensible Plugin Infrastructure


Getting Started



Use the following in your Podfile.

pod 'Cauliframework'

Then run pod install.


Carthage is a non intrusive way to install Cauli to your project. It makes no changes to your Xcode project and workspace. Add the following to your Cartfile:

github "cauliframework/cauli"


Add an import Cauliframework to your AppDelegate and call the run function on the shared instace in the application(:, didFinishLaunchingWithOptions:). Make sure to call run before instantiating any URLSession. Otherwise Cauli can't intercept network requests and create any records.

import Cauliframework

public class AppDelegate: UIApplicationDelegate {
    public func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
        // perform your usual application setup
        return true

This will configure Cauli to hook into every request, setup the core florets (plugins) (InspectorFloret) and configures a shake gesture for the Cauli UI.


Please read CONTRIBUTING for details.


Cauli is available under the MIT license.

You can’t perform that action at this time.