{"id":15723990,"url":"https://github.com/patrick-kladek/cocoadebugkit","last_synced_at":"2025-04-05T08:07:00.296Z","repository":{"id":55422293,"uuid":"58963204","full_name":"Patrick-Kladek/CocoaDebugKit","owner":"Patrick-Kladek","description":"Debugging made easy. Automatically create QuickLook images of custom objects","archived":false,"fork":false,"pushed_at":"2023-11-29T07:59:57.000Z","size":5786,"stargazers_count":469,"open_issues_count":0,"forks_count":22,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-04-05T08:06:54.698Z","etag":null,"topics":["debugging","quicklook","xcode"],"latest_commit_sha":null,"homepage":"","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/Patrick-Kladek.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-05-16T19:59:31.000Z","updated_at":"2025-04-03T00:08:56.000Z","dependencies_parsed_at":"2024-10-24T05:19:11.393Z","dependency_job_id":"6d49ab12-1527-43a4-b778-96a89a2edc24","html_url":"https://github.com/Patrick-Kladek/CocoaDebugKit","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Patrick-Kladek%2FCocoaDebugKit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Patrick-Kladek%2FCocoaDebugKit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Patrick-Kladek%2FCocoaDebugKit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Patrick-Kladek%2FCocoaDebugKit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Patrick-Kladek","download_url":"https://codeload.github.com/Patrick-Kladek/CocoaDebugKit/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247305934,"owners_count":20917208,"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","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":["debugging","quicklook","xcode"],"created_at":"2024-10-03T22:14:11.908Z","updated_at":"2025-04-05T08:07:00.269Z","avatar_url":"https://github.com/Patrick-Kladek.png","language":"Objective-C","readme":"CocoaDebugKit\n============\n[![Twitter: @PatrickKladek](https://img.shields.io/badge/twitter-@PatrickKladek-orange.svg?style=flat)](https://twitter.com/PatrickKladek)\n[![License](https://img.shields.io/badge/license-MIT-green.svg?style=flat)](https://github.com/Patrick-Kladek/CocoaDebugKit/blob/master/LICENSE.md)\n![Build](https://img.shields.io/badge/build-Xcode%2011-blue.svg)\n![Platform](https://img.shields.io/badge/platform-macOS%2010.9+%20|%20iOS%208.0+-blue.svg)\n![Tested](https://img.shields.io/badge/tested-macOS%2010.9%20|%20iOS%208.0-blue.svg)\n[![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage)\n\n\nDebugging made easy. Automatically create QuickLook images of custom objects.\n\n\nThis project helps developers to visualize custom objects and will therefore speed up your development process.\n\nLets say we have a custom Object called \"Person\" and want to inspect all variables in Xcode. This will look something like that:\n\n![alt text](https://raw.githubusercontent.com/Patrick-Kladek/CocoaDebugKit/master/Doc/old%20Debug.png \"Classic Debug View\")\n\nWith CocoaDebugKit it will look like this:\n\n![alt text](https://raw.githubusercontent.com/Patrick-Kladek/CocoaDebugKit/master/Doc/new%20Debug.png \"Debug View with custom rendered QuickLook image\")\n\n\nSo how can we achieve this goal? It´s easy just add this Framework to your Project and implement this method in your custom object:\n\n```objective-c\n#import \"Person.h\"\n#import \u003cCocoaDebugKit/CocoaDebugKit.h\u003e\n\n\n@implementation Person\n\n- (id)debugQuickLookObject\n{\n    return [CocoaDebugView debugViewWithAllPropertiesOfObject:self includeSuperclasses:YES];\n}\n\n@end\n```\n\nAfter that set a breakpoint in your code, select an object you want to inspect and hit space. This will open a small quicklook popover with the contents of your object.\n\n\n\n## Requirements\n- macOS 10.9+\n- iOS 8+\n- Xcode 11+\n\n## Installation\n\nThe prefered way to use CocoaDebugKit is via Carthage. Simply add this line to your cartfile:\n\n```\ngithub \"Patrick-Kladek/CocoaDebugKit\"\n```\n\nand run:\n\n```\ncarthage update --platform ios\n```\n\n## Known Limitations\n- NSObject rootclass required\n- Cocoa Runtime\n\nBoth of these limitations don't prevent you from using CocoaDebugKit. You can always create the debugView manually:\n\n```objective-c\n- (id)debugQuickLookObject\n{\n    CocoaDebugView *view = [CocoaDebugView debugView];\n\n    [view addLineWithDescription:@\"Image:\" image:self.image];\n    [view addLineWithDescription:@\"First Name:\" string:self.firstName];\n    [view addLineWithDescription:@\"Last Name:\" string:self.lastName];\n    [view addLineWithDescription:@\"Birthday\" date:self.birthday];\n\n    return view;\n}\n\n```\n\n## Note\nOn iOS returning a UIView subclass to QuickLook may result in an empty preview. To fix this simply return an image.\n\n```objecitve-c\nreturn [[CocoaDebugView debugViewWithAllPropertiesOfObject:self includeSuperclasses:YES] imageRepresentation];\n```\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpatrick-kladek%2Fcocoadebugkit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpatrick-kladek%2Fcocoadebugkit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpatrick-kladek%2Fcocoadebugkit/lists"}