Dotzu In-App iOS Debugging Tool With Enhanced Logging, Networking Info, Crash reporting And More.

Overview

Dotzu

In-App iOS Debugging Tool With Enhanced Logging, Networking Info, Crash reporting And More.

Platform iOS

Carthage compatible

License MIT

Codacy Badge

The debugger tool for iOS developer. Display logs, network request, device informations, crash logs while using the app. Easy accessible with its bubble head button 🔘 . Easy to integrate in any apps, to handle development or testing apps easier. First version, there is plenty of room for improvement.

👉 Objective-c example 🐢


Usage

In the AppDelegate instanciate Dotzu manager. Be careful to use Dotzu for development purpose only.

   func application(_ application: UIApplication,
   didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
        #if DEBUG
            Dotzu.sharedManager.enable()
        #endif
        return true
   }

Logs

Dotzu override print, so you can use it and see your logs. otherwise, you can add level, and get more details (file, and line) about your logs. With the Logger class provided by the framework. Get new logs count on the badge, or warning/error notification on the bubble head.

print("logs")
Logger.verbose("some logs")
Logger.info("infos")
Logger.warning("warning ! ⚠️")
Logger.error("error ❌")

Network

Dotzu use URLProcotol to logg the request. Can can add the logger on a custom URLSessionConfiguration. Works with Alamofire. Works by default with URLSession.shared. You can disabled the networking logging in the settings screen. Get notified by a 🚀 , when a request is launched.

//Your custom configuration
let configuration = URLSessionConfiguration.default

///Add the network logger on the configuration
Dotzu.sharedManager.addLogger(session: configuration)

//Use it:
//For Alamofire
let sessionManager = Alamofire.SessionManager(configuration: configuration)

//For URLSession
let session = URLSession(configuration: configuration)

Installation

CocoaPods

You can use CocoaPods to install Dotzu by adding it to your Podfile:

platform :ios, '9.0'
use_frameworks!
pod 'Dotzu'

For Objective-c use :

pod 'DotzuObjc'

Carthage

Add this to your Cartfile:

github "remirobert/Dotzu"

Manually

Drag the source files into your project.

Installation - Objective-c

CocoaPods

You can use CocoaPods to install DotzuObjc by adding it to your Podfile:

platform :ios, '9.0'
use_frameworks!
pod 'DotzuObjc'

Contact

License

Dotzu is released under the MIT License.

Comments
  • Only print statements from 1st view controller appear in dotzu log

    Only print statements from 1st view controller appear in dotzu log

    I have a tab bar controller with each view controller inside a navigation controller getting its own tab. In Xcode I get log messages that don't appear in the app (dotzu's green and black screen). It seems I only get messages from the 1st view controller, but not the 2nd. Do I need to enable in each file, or just in the AppDelegate.swift file? What else could I be doing wrong?

    opened by Mozahler 7
  • [COCOAPODS] Dotzu added, black circle & crashes

    [COCOAPODS] Dotzu added, black circle & crashes

    Hi,

    I added Dotzu (0.1) via CocoaPods & inserted Dotzu.sharedManager.displayWindow() to the AppDelegate didFinishLaunchingWithOptions method. A black disc appears when running the app on a device and clicking it causes an immediate crash (or at least, it goes back to the Springboard).

    Error follows. It seems to be missing a storyboard, maybe something that's not included in the CocoaPod? Bonne chance.

    2017-02-04 18:24:00.204 MobileNZB[12734:376722] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Could not find a storyboard named 'Manager' in bundle NSBundle </Users/ed/Library/Developer/CoreSimulator/Devices/29CB8703-06DF-41BC-B233-9484356CDA49/data/Containers/Bundle/Application/C46F1471-E990-4BA7-85D5-ACF4BD54F913/MobileNZB.app> (loaded)'
    *** First throw call stack:
    (
    	0   CoreFoundation                      0x0000000109d4ad4b __exceptionPreprocess + 171
    	1   libobjc.A.dylib                     0x00000001097ac21e objc_exception_throw + 48
    	2   UIKit                               0x00000001081f299f -[UIStoryboard name] + 0
    	3   Dotzu                               0x0000000107247d05 _TTOFCSo12UIStoryboardCfT4nameSS6bundleGSqCSo6Bundle__S_ + 85
    	4   Dotzu                               0x000000010724d3e2 _TFC5Dotzu21ManagerViewController12didTapButtonfT_T_ + 194
    	5   Dotzu                               0x000000010724f7ef _TTWC5Dotzu21ManagerViewControllerS_19LogHeadViewDelegateS_FS1_12didTapButtonfT_T_ + 63
    	6   Dotzu                               0x00000001072378eb _TFC5Dotzu11LogHeadView3tapfT_T_ + 123
    	7   Dotzu                               0x0000000107237932 _TToFC5Dotzu11LogHeadView3tapfT_T_ + 34
    	8   UIKit                               0x0000000107f61409 -[UIGestureRecognizerTarget _sendActionWithGestureRecognizer:] + 57
    	9   UIKit                               0x0000000107f691a8 _UIGestureRecognizerSendTargetActions + 109
    	10  UIKit                               0x0000000107f66c77 _UIGestureRecognizerSendActions + 227
    	11  UIKit                               0x0000000107f65f03 -[UIGestureRecognizer _updateGestureWithEvent:buttonEvent:] + 891
    	12  UIKit                               0x0000000107f51f7e _UIGestureEnvironmentUpdate + 1395
    	13  UIKit                               0x0000000107f519c3 -[UIGestureEnvironment _deliverEvent:toGestureRecognizers:usingBlock:] + 521
    	14  UIKit                               0x0000000107f50ba6 -[UIGestureEnvironment _updateGesturesForEvent:window:] + 286
    	15  UIKit                               0x0000000107a96c1d -[UIWindow sendEvent:] + 3989
    	16  UIKit                               0x0000000107a439ab -[UIApplication sendEvent:] + 371
    	17  UIKit                               0x000000010823072d __dispatchPreprocessedEventFromEventQueue + 3248
    	18  UIKit                               0x0000000108229463 __handleEventQueue + 4879
    	19  CoreFoundation                      0x0000000109cef761 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
    	20  CoreFoundation                      0x0000000109cd498c __CFRunLoopDoSources0 + 556
    	21  CoreFoundation                      0x0000000109cd3e76 __CFRunLoopRun + 918
    	22  CoreFoundation                      0x0000000109cd3884 CFRunLoopRunSpecific + 420
    	23  GraphicsServices                    0x000000010ff3aa6f GSEventRunModal + 161
    	24  UIKit                               0x0000000107a25c68 UIApplicationMain + 159
    	25  MobileNZB                           0x0000000106d2c97f main + 111
    	26  libdyld.dylib                       0x000000010ab7268d start + 1
    )
    libc++abi.dylib: terminating with uncaught exception of type NSException
    (lldb) ```
    bug 
    opened by edasque 6
  • defect - when I switch to errors I'm still seeing counter increment.

    defect - when I switch to errors I'm still seeing counter increment.

    screen shot 2017-03-28 at 3 50 06 pm

    I wonder if it would make most sense if inner circle could be used as a kind of reg / orange /blue / grey... just an idea. docs_190726c_pie_chart_en

    I think the design would sit with apps better if the dark grey background opacity is weak / almost transparent 30%. that way it's hidden from app. (awesome job on this btw)

    opened by wwe-johndpope 5
  • Crash sessions don't capture all null dereferences on device

    Crash sessions don't capture all null dereferences on device

    Hi,

    thanks for an incredible project - a real tour de force.

    I have noticed that certain crashes in my application are not caught by Dotzu when run on device. Replacing this line with:

        private func crashSigbart() {
            let a : Int? = nil
            _ = a!  
       }
    

    produces no crash report on restart.

    Would someone be able to verify this?

    many thanks,

    Daniel

    opened by DanielAsher 4
  • swift 3 - crash - fix for bundle

    swift 3 - crash - fix for bundle

    N.B. When using pod install on new repo that is not named remi.robert.Dotzu - sample project should crash with missing storyboard. It appears all the hardcoded references to bundle "remi.robert.Dotzu" are not working on xcode 8.2 / swift 3 - cocoapods 1.2

    ManagerViewController.swift

     func didTapButton() {
            Dotzu.sharedManager.displayedList = true
            let podBundle = Bundle(for: ManagerViewController.self) // <- this line 
            let storyboard = UIStoryboard(name: "Manager", bundle: podBundle)
    // otherwise  this crashes -  let storyboard = UIStoryboard(name: "Manager", bundle: Bundle(identifier: "remi.robert.Dotzu"))
            guard let controller = storyboard.instantiateInitialViewController() else {
                return
            }
            self.present(controller, animated: true, completion: nil)
        }
    

    Could not load the "filter" image referenced from a nib in the bundle with identifier "org.cocoapods.Dotzu" 2017-03-07 10:07:52.237 wwe-redesign-ios[30502:1861796] Could not load the "tabbar-logs" image referenced from a nib in the bundle with identifier "org.cocoapods.Dotzu" 2017-03-07 10:07:52.238 wwe-redesign-ios[30502:1861796] Could not load the "tabbar-logs" image referenced from a nib in the bundle with identifier "org.cocoapods.Dotzu" 2017-03-07 10:07:52.245 wwe-redesign-ios[30502:1861796] Could not load the "tabbar-app" image referenced from a nib in the bundle with identifier "org.cocoapods.Dotzu" 2017-03-07 10:07:52.246 wwe-redesign-ios[30502:1861796] Could not load the "tabbar-app" image referenced from a nib in the bundle with identifier "org.cocoapods.Dotzu" 2017-03-07 10:07:52.250 wwe-redesign-ios[30502:1861796] Could not load the "tabbar-settings" image referenced from a nib in the bundle with identifier "org.cocoapods.Dotzu" 2017-03-07 10:07:52.251 wwe-redesign-ios[30502:1861796] Could not load the "tabbar-settings" image referenced from a nib in the bundle with identifier "org.cocoapods.Dotzu" 2017-03-07 10:07:56.177 wwe-redesign-ios[30502:1861796] Could not load the "bugs-icon" image referenced from a nib in the bundle with identifier "org.cocoapods.Dotzu"

    opened by johndpope-karhoo 4
  • Allow public function to disable console logging.

    Allow public function to disable console logging.

    I'm using XCGLogger in conjunction with Dotzu (#6) and have disabled default console logging to avoid duplicates here.

    A better solution would be to allow a public function to configure this. Would you like a PR?

    thanks, Daniel

    opened by DanielAsher 3
  • Adding to project freezes user input, does not show dotzu floating button

    Adding to project freezes user input, does not show dotzu floating button

    It's weird because we're using this in 2 different projects.

    The first one is an older project that has been in development for 2 years. When i follow instructions to add to the AppDelgate via Dotzu.sharedManager.displayWindow(), it

    1. does not show dotzu manager
    2. seems to freeze all user input on the screen (UI interaction works, b/c i set an animation and that still works, just all user input is gone.

    On a newer project, that i just created last week, calling Dotzu.sharedManager.displayWindow() works.

    How can i debug what the issue is? It looks like when i hit Xcode's Debug | Print View Hierarchy I see:

    image And when i print of description of UIWindow i get:

    po 0x7fe6fc40d450 <UIWindow: 0x7fe6fc40d450; frame = (0 0; 414 736); gestureRecognizers = <NSArray: 0x6180000527e0>; layer = <UIWindowLayer: 0x618000028640>>

    After casting it:

    (lldb) expr -l Swift -- print($nav) <UIWindow: 0x7fe6fc40d450; frame = (0 0; 414 736); gestureRecognizers = <NSArray: 0x6180000527e0>; layer = <UIWindowLayer: 0x618000028640>>

    I debug, and everything seems right:

    0.0
    (lldb) expr -l Swift -- print($nav.screen)
    <UIScreen: 0x7fe6fc700280; bounds = {{0, 0}, {414, 736}}; mode = <UIScreenMode: 0x61000003f720; size = 1242.000000 x 2208.000000>>
    (lldb) expr -l Swift -- print($nav.makeKeyAndVisible)
    (Function)
    (lldb) expr -l Swift -- print($nav.rootViewController)
    Optional(<OrdersViewLite.NavigationController: 0x7fe6fd00fa00>)```
    opened by jonchui 3
  • Consider allowing show / hide window functionality

    Consider allowing show / hide window functionality

    Hi again,

    I require show / hide window functionality to use with the excellent SwiftTweaks project. This allows a more advanced TestFlight user to monitor and understand the app. I have a trivial implementation here but would be very pleased to discuss a PR if you were open to it.

    thanks again and have a wonderful day!

    Daniel

    enhancement 
    opened by DanielAsher 2
  • Network - don't scroll to bottom after popping detail view

    Network - don't scroll to bottom after popping detail view

    Let's say I've got 10000 network requests recorded in the Network tab. I want to investigate top 10 (the oldest ones). I need to scroll all the way up (by the way - tap on the status bar to scroll to the top doesn't work), select a cell, read everything in the details view. Then I tap back and it takes me to the list, but it scrolls all the way down to the newest records, and I have to scroll all the way up once again, same for the next request etc.

    bug enhancement 
    opened by natalia-osa 2
  • minimum deployment target

    minimum deployment target

    hello, can you support minimum deployment target iOS 9.0? i use carthage to install Dotzu when i use on my project when i build i got alert message Module files minimum deployment target is iOS 10.2 v10.2...

    opened by dars 2
  • Make manager view optional

    Make manager view optional

    Thank you for all your work for awesome logging tool!

    In this PR, I have added option to use Dotzu without Bubble Head.

    We are using Dotzu with some in-house debugging tools. We were looking to manage all the debugging tools at one place.

    Summary:

    • Made Manager window & controller optional
    • Created Dotzu config to extend setup options in the future.
    • Opened access to ManagerViewController from DotzuManager
    • Updated example with config
    • Updated ReadMe to show usage of config

    Thanks!

    opened by k-thorat 1
  • SSL certificate pinning conflict

    SSL certificate pinning conflict

    When using SSL pinning (disabling SSL certificate verification) and logging network requests with Dotzu, the pinning is ignored and the requests are accused to be not verified. I've tried to resolve this tweking the pod around but didn't find any solution.

    Dotzu.sharedManager.addLogger(session: configuration)

    opened by CarlinhaCamargo 0
  • Extend Device struct with new iOS devices.

    Extend Device struct with new iOS devices.

    Thanks for wonderful tool. What I've noticed that Device struct currently doesn't include latest iOS devices. iPhone X for example. Suppose it might be useful to add them.

    Thanks if you will find some time to have a look.

    opened by EugeneEl 0
  • memory woes - nsarchiver

    memory woes - nsarchiver

    need to fix this

    related https://github.com/remirobert/Dotzu-Objective-c/issues/4

    screen shot 2017-11-26 at 10 42 42 am

    
    ◽️ [2017-11-26 15:42:20] SFQuery.m.+[SFQuery q:nextRecordsUrl:sObject:cache:callback:][26] : query SELECT Id,OwnerId,IsDeleted,Name,CreatedDate,CreatedById,LastModifiedDate,LastModifiedById,SystemModstamp,LastViewedDate,LastReferencedDate,FieldStorm__Description__c,FieldStorm__Hide_Survey_Name__c,FieldStorm__Industry__c,FieldStorm__Submit_Response__c,FieldStorm__Survey_Container_CSS__c,FieldStorm__Survey_Header__c,FieldStorm__Thank_You_Text__c,FieldStorm__Title__c,FieldStorm__URL__c,FieldStorm__thankYouLink__c,FieldStorm__thankYouText__c,IsEnabled__c,Customer_Type__c,IsRequired__c FROM FieldStorm__Survey__c ORDER BY Id DESC
    FieldStorm(19061,0xb030a000) malloc: *** mach_vm_map(size=6594560) failed (error code=3)
    *** error: can't allocate region
    *** set a breakpoint in malloc_error_break to debug
    FieldStorm(19061,0xb030a000) malloc: *** mach_vm_map(size=6606848) failed (error code=3)
    *** error: can't allocate region
    *** set a breakpoint in malloc_error_break to debug
    FieldStorm(19061,0xb030a000) malloc: *** mach_vm_map(size=6615040) failed (error code=3)
    *** error: can't allocate region
    *** set a breakpoint in malloc_error_break to debug
    FieldStorm(19061,0xb030a000) malloc: *** mach_vm_map(size=6627328) failed (error code=3)
    *** error: can't allocate region
    *** set a breakpoint in malloc_error_break to debug
    FieldStorm(19061,0xb030a000) malloc: *** mach_vm_map(size=6635520) failed (error code=3)
    *** error: can't allocate region
    *** set a breakpoint in malloc_error_break to debug
    FieldStorm(19061,0xb030a000) malloc: *** mach_vm_map(size=6647808) failed (error code=3)
    *** error: can't allocate region
    *** set a breakpoint in malloc_error_break to debug
    FieldStorm(19061,0xb030a000) malloc: *** mach_vm_map(size=6656000) failed (error code=3)
    *** error: can't allocate region
    *** set a breakpoint in malloc_error_break to debug
    FieldStorm(19061,0xb030a000) malloc: *** mach_vm_map(size=6668288) failed (error code=3)
    *** error: can't allocate region
    *** set a breakpoint in malloc_error_break to debug
    FieldStorm(19061,0xb030a000) malloc: *** mach_vm_map(size=6676480) failed (error code=3)
    *** error: can't allocate region
    *** set a breakpoint in malloc_error_break to debug
    FieldStorm(19061,0xb030a000) malloc: *** mach_vm_map(size=6688768) failed (error code=3)
    *** error: can't allocate region
    *** set a breakpoint in malloc_error_break to debug
    FieldStorm(19061,0xb030a000) malloc: *** mach_vm_map(size=6696960) failed (error code=3)
    *** error: can't allocate region
    *** set a breakpoint in malloc_error_break to debug
    FieldStorm(19061,0xb030a000) malloc: *** mach_vm_map(size=6709248) failed (error code=3)
    *** error: can't allocate region
    *** set a breakpoint in malloc_error_break to debug
    FieldStorm(19061,0xb030a000) malloc: *** mach_vm_map(size=6717440) failed (error code=3)
    *** error: can't allocate region
    *** set a breakpoint in malloc_error_break to debug
    FieldStorm(19061,0xb030a000) malloc: *** mach_vm_map(size=6725632) failed (error code=3)
    *** error: can't allocate region
    *** set a breakpoint in malloc_error_break to debug
    FieldStorm(19061,0xb030a000) malloc: *** mach_vm_map(size=5382144) failed (error code=3)
    *** error: can't allocate region
    *** set a breakpoint in malloc_error_break to debug
    FieldStorm(19061,0xb030a000) malloc: *** mach_vm_map(size=5382144) failed (error code=3)
    *** error: can't allocate region
    *** set a breakpoint in malloc_error_break to debug
    ◽️ [2017-11-26 15:42:20] SFDataEnvironment+SQLSync.m.-[SFDataEnvironment(sync) fetchCountBySObject:queueSoql:]_block_invoke[551] : result:{
        done = 1;
        records =     (
        );
        totalSize = 5;
    }
    FieldStorm(19061,0xb030a000) malloc: *** mach_vm_map(size=3792896) failed (error code=3)
    *** error: can't allocate region
    *** set a breakpoint in malloc_error_break to debug
    FieldStorm(19061,0xb030a000) malloc: *** mach_vm_map(size=3796992) failed (error code=3)
    *** error: can't allocate region
    *** set a breakpoint in malloc_error_break to debug
    FieldStorm(19061,0xb030a000) malloc: *** mach_vm_map(size=4022272) failed (error code=3)
    *** error: can't allocate region
    *** set a breakpoint in malloc_error_break to debug
    FieldStorm(19061,0xb030a000) malloc: *** mach_vm_map(size=4030464) failed (error code=3)
    *** error: can't allocate region
    *** set a breakpoint in malloc_error_break to debug
    FieldStorm(19061,0xb030a000) malloc: *** mach_vm_map(size=4263936) failed (error code=3)
    *** error: can't allocate region
    *** set a breakpoint in malloc_error_break to debug
    FieldStorm(19061,0xb030a000) malloc: *** mach_vm_map(size=4272128) failed (error code=3)
    *** error: can't allocate region
    *** set a breakpoint in malloc_error_break to debug
    FieldStorm(19061,0xb030a000) malloc: *** mach_vm_map(size=4722688) failed (error code=3)
    *** error: can't allocate region
    *** set a breakpoint in malloc_error_break to debug
    FieldStorm(19061,0xb030a000) malloc: *** mach_vm_map(size=3780608) failed (error code=3)
    *** error: can't allocate region
    *** set a breakpoint in malloc_error_break to debug
    2017-11-26 10:42:20.220 FieldStorm[19061:1469979] *** Terminating app due to uncaught exception 'NSMallocException', reason: '*** -[NSConcreteMutableData appendBytes:length:]: unable to allocate memory for length (3777313)'
    *** First throw call stack:
    (
    	0   CoreFoundation                      0x0756b494 __exceptionPreprocess + 180
    	1   libobjc.A.dylib                     0x06823e02 objc_exception_throw + 50
    	2   CoreFoundation                      0x0756b3bd +[NSException raise:format:] + 141
    	3   Foundation                          0x02ab39ae _NSMutableDataGrowBytes + 764
    	4   Foundation                          0x02aac0b4 -[NSConcreteMutableData appendBytes:length:] + 434
    	5   CoreFoundation                      0x07462d2f CFDataAppendBytes + 175
    	6   CoreFoundation                      0x0745ba77 writeBytes + 231
    	7   CoreFoundation                      0x0745a32b bufferWrite + 91
    	8   CoreFoundation                      0x0745b1c4 _appendString + 580
    	9   CoreFoundation                      0x0745a46b _appendObject + 75
    	10  CoreFoundation                      0x07510821 __CFBinaryPlistWriteOrPresize + 561
    	11  CoreFoundation                      0x074cbe48 __CFBinaryPlistWriteToStreamWithOptions + 40
    	12  Foundation                          0x02ac36c5 -[NSKeyedArchiver finishEncoding] + 640
    	13  Foundation                          0x02ac0f8b +[NSKeyedArchiver archivedDataWithRootObject:] + 229
    	14  Dotzu                               0x05e5911f _T05Dotzu12StoreManagerC11archiveLogs33_6967D8E67826B10122FB2AE77CBE0B9ALLySayxG4logs_tF + 159
    	15  Dotzu                               0x05e593ba _T05Dotzu12StoreManagerC3addyx3log_tF + 138
    	16  Dotzu                               0x05e1d662 _T05Dotzu6LoggerC9handleLog33_136BBB0DD6D6F1C0603D146F86879E0ALLySayypGd_AA0D5LevelO5levelSSSg4fileAJ8functionSiSg4linetFZyycfU0_ + 946
    	17  Dotzu                               0x05e1dceb _T05Dotzu6LoggerC9handleLog33_136BBB0DD6D6F1C0603D146F86879E0ALLySayypGd_AA0D5LevelO5levelSSSg4fileAJ8functionSiSg4linetFZyycfU0_TA + 171
    	18  Dotzu                               0x05dd2938 _T0Ix_IyB_TR + 40
    	19  libdispatch.dylib                   0x084539e3 _dispatch_call_block_and_release + 15
    	20  libdispatch.dylib                   0x084716ed _dispatch_client_callout + 14
    	21  libdispatch.dylib                   0x0845932e _dispatch_queue_drain + 1065
    	22  libdispatch.dylib                   0x08458c79 _dispatch_queue_invoke + 563
    	23  libdispatch.dylib                   0x0845a722 _dispatch_root_queue_drain + 442
    	24  libdispatch.dylib                   0x0845a561 _dispatch_worker_thread3 + 108
    	25  libsystem_pthread.dylib             0x08799fdc _pthread_wqthread + 1356
    	26  libsystem_pthread.dylib             0x08799a6a start_wqthread + 34
    )
    libc++abi.dylib: terminating with uncaught exception of type NSException
    (lldb) 
    
    opened by johndpope 1
Owner
Remi ROBERT
Remi ROBERT
An in-app debugging and exploration tool for iOS

FLEX FLEX (Flipboard Explorer) is a set of in-app debugging and exploration tools for iOS development. When presented, FLEX shows a toolbar that lives

FLEXTool 13.3k Dec 31, 2022
blued enhanced tweak for iOS

BLUEDHOOK 本项目支持 Blued、Blued 极速版。 非越狱机型请通过 Monkeydev 环境打包 ipa 或 dylib/deb 进行重签名,越狱机型直接安装 release deb 即可。 已知问题 重签后不支持 apns 推送 同时安装 Blued、Blued 极速版 并登录同一

null 22 Oct 22, 2022
Automaticly display Log,Crash,Network,ANR,Leak,CPU,RAM,FPS,NetFlow,Folder and etc with one line of code based on Swift. Just like God opened his eyes

GodEye Automaticly display Log,Crash,Network,ANR,Leak,CPU,RAM,FPS,NetFlow,Folder and etc with one line of code based on Swift. Just like God opened hi

陈奕龙(子循) 3.7k Dec 23, 2022
Remote network and data debugging for your native iOS app using Chrome Developer Tools

PonyDebugger PonyDebugger is a remote debugging toolset. It is a client library and gateway server combination that uses Chrome Developer Tools on you

Square 5.9k Dec 24, 2022
Free macOS app for iOS view debugging.

Introduction You can inspect and modify views in iOS app via Lookin, just like UI Inspector in Xcode, or another app called Reveal. Official Website:h

Li Kai 575 Dec 28, 2022
A collection of tools for debugging, diffing, and testing your application's data structures.

Custom Dump A collection of tools for debugging, diffing, and testing your application's data structures. Motivation customDump diff XCTAssertNoDiffer

Point-Free 631 Jan 3, 2023
A lightweight, one line setup, iOS / OSX network debugging library! 🦊

Netfox provides a quick look on all executed network requests performed by your iOS or OSX app. It grabs all requests - of course yours, requests from

Christos Kasketis 3.4k Dec 28, 2022
Set of easy to use debugging tools for iOS developers & QA engineers.

DBDebugToolkit DBDebugToolkit is a debugging library written in Objective-C. It is meant to provide as many easily accessible tools as possible while

Dariusz Bukowski 1.2k Dec 30, 2022
Chisel is a collection of LLDB commands to assist debugging iOS apps.

Chisel Chisel is a collection of LLDB commands to assist in the debugging of iOS apps. [Installation • Commands • Custom Commands • Development Workfl

Facebook 8.9k Jan 6, 2023
Next generation debugging framework for iOS

Alpha is the idea of a next generation debugging framework for iOS applications. It combines multiple debugging tools built on top of a simple, unifie

Dal Rupnik 733 Oct 29, 2022
iOS network debugging, like a wizard 🧙‍♂️

Start debugging iOS network calls like a wizard, without extra code! Wormholy makes debugging quick and reliable. What you can do: No code to write an

Paolo Musolino 2.1k Jan 8, 2023
Profiling / Debugging assist tools for iOS. (Memory Leak, OOM, ANR, Hard Stalling, Network, OpenGL, Time Profile ...)

MTHawkeye Readme 中文版本 MTHawkeye is profiling, debugging tools for iOS used in Meitu. It's designed to help iOS developers improve development producti

meitu 1.4k Dec 29, 2022
Droar is a modular, single-line installation debugging window

Droar is a modular, single-line installation debugging window. Overview The idea behind Droar is simple: during app deployment stages, adding quick ap

Myriad Mobile 55 Sep 24, 2022
Convenient debugging button.

FunnyButton Example 在平时开发,运行期间有时候想中途看一下某个视图或变量的信息,虽说打断点是可以查看,但有时候断点调试有时候会卡住好一会才能看到(尤其是大项目经常卡很久),极度影响效率。 基于这种情况,FunnyButton就是为了能够便捷调试的全局按钮,添加好点击事件,就能随时

健了个平_(:з」∠)_ 2 Sep 20, 2022
In-app design review tool to inspect measurements, attributes, and animations.

Hyperion Hyperion - In App Design Review Tool What is it? Hyperion is a hidden plugin drawer that can easily be integrated into any app. The drawer si

WillowTree, LLC 2k Dec 27, 2022
Tool to debug layouts directly on iOS devices: inspect layers in 3D and debug each visible view attributes

Introduction Features Inspect layouts directly on iOS devices Inspection could be triggered only if app is running under DEBUG build configuration, so

Ihor Savynskyi 510 Dec 24, 2022
Xray is viewDebugging tool for iOS, tvOS, watchOS and macOS

XRay XRay is view debugging tool for iOS. Currently, XRay can show all of the view hierarchies in UIKit. For SwiftUI, I'm working on it. XRay helps yo

Shawn Baek 10 Jun 10, 2022
In-app console and debug tools for iOS developers

LocalConsole Welcome to LocalConsole! This Swift Package makes on-device debugging easy with a convenient PiP-style console that can display items in

Duraid Abdul 650 Jan 1, 2023
Customizable Console UI overlay with debug log on top of your iOS App

AEConsole Customizable Console UI overlay with debug log on top of your iOS App AEConsole is built on top of AELog, so you should probably see that fi

Marko Tadić 142 Dec 21, 2022