{"id":25764658,"url":"https://github.com/ipedro/swiftui-property-inspector","last_synced_at":"2026-05-15T04:03:54.050Z","repository":{"id":247487379,"uuid":"774098159","full_name":"ipedro/swiftui-property-inspector","owner":"ipedro","description":null,"archived":false,"fork":false,"pushed_at":"2025-11-08T06:48:37.000Z","size":2868,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-04-08T08:44:29.934Z","etag":null,"topics":["introspection","swiftui","view-inspection"],"latest_commit_sha":null,"homepage":"https://ipedro.github.io/swiftui-property-inspector/","language":"Swift","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/ipedro.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-03-19T00:01:26.000Z","updated_at":"2025-11-08T06:48:40.000Z","dependencies_parsed_at":"2025-02-26T21:29:58.982Z","dependency_job_id":null,"html_url":"https://github.com/ipedro/swiftui-property-inspector","commit_stats":null,"previous_names":["ipedro/swiftui-property-inspector"],"tags_count":11,"template":false,"template_full_name":null,"purl":"pkg:github/ipedro/swiftui-property-inspector","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ipedro%2Fswiftui-property-inspector","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ipedro%2Fswiftui-property-inspector/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ipedro%2Fswiftui-property-inspector/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ipedro%2Fswiftui-property-inspector/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ipedro","download_url":"https://codeload.github.com/ipedro/swiftui-property-inspector/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ipedro%2Fswiftui-property-inspector/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33053146,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-13T13:14:54.681Z","status":"online","status_checked_at":"2026-05-15T02:00:06.351Z","response_time":103,"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":["introspection","swiftui","view-inspection"],"created_at":"2025-02-26T21:19:44.685Z","updated_at":"2026-05-15T04:03:54.041Z","avatar_url":"https://github.com/ipedro.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SwiftUI Property Inspector\n\n[![Tests](https://github.com/ipedro/swiftui-property-inspector/actions/workflows/tests.yml/badge.svg)](https://github.com/ipedro/swiftui-property-inspector/actions/workflows/tests.yml)\n[![Documentation](https://github.com/ipedro/swiftui-property-inspector/actions/workflows/generate-documentation.yml/badge.svg)](https://github.com/ipedro/swiftui-property-inspector/actions/workflows/generate-documentation.yml)\n![Swift Version](https://img.shields.io/badge/swift-5.7-orange.svg)\n![License](https://img.shields.io/badge/License-MIT-blue.svg)\n![SPM Compatible](https://img.shields.io/badge/Swift_Package_Manager-compatible-brightgreen.svg)\n\n[PropertyInspector](https://ipedro.github.io/swiftui-property-inspector/documentation/propertyinspector/propertyinspector) is a SwiftUI component that provides a powerful and flexible way to inspect and interact with properties dynamically. It's designed for developers who want to create sophisticated debugging tools, enhance the interactivity of their apps, or simply need a detailed view into their data structures. All that with minimal code and a [straightforward API](https://ipedro.github.io/swiftui-property-inspector/documentation/propertyinspector/swiftui/view).\n\n## Features\n\n- **Dynamic Property Inspection**: Intuitively inspect properties of any type within your SwiftUI views.\n- **Customizable UI**: Easily customize icons, labels, and detail views for each property.\n- **Sorting Capability**: Sort properties using custom criteria for better organization and accessibility.\n- **Search Functionality**: Quickly find properties with a built-in search feature.\n- **Environment Customization**: Adjust corner radius for the property highlight view using environment values.\n\n## Requirements\n\n- iOS 15.0+\n- Swift 5.7+\n- Xcode 15.0+\n\n## Installation\n\n### Swift Package Manager\n\nAdd `swiftui-property-inspector` to your project by including it in your `Package.swift` file:\n\n```swift\ndependencies: [\n    .package(url: \"https://github.com/ipedro/swiftui-property-inspector\", .upToNextMajor(from: \"1.0.0\"))\n]\n```\n\nThen, import `swiftui-property-inspector` in your SwiftUI views to start using it.\n\n## Documentation\n\nThe full documentation for `swiftui-property-inspector` can be found [here](https://ipedro.github.io/swiftui-property-inspector/documentation/propertyinspector/).\n\n## Usage\n\nHere's a simple example of using `PropertyInspector` in your SwiftUI views:\n\n![SwiftUI PropertyInspector plain list style example](README/swiftui-property-inspector-plain-list-example.gif)\n\n```swift\nimport PropertyInspector\nimport SwiftUI\n\nvar body: some View {\n    PropertyInspector(listStyle: .plain) {\n        VStack(content: {\n            InspectableText(content: \"Placeholder Text\")\n            InspectableButton(style: .bordered)\n        })\n        .propertyInspectorRowLabel(for: Int.self, label: { data in\n            Text(\"Tap count: \\(data)\")\n        })\n        .propertyInspectorRowIcon(for: Int.self, icon: { data in\n            Image(systemName: \"\\(data).circle.fill\")\n        })\n        .propertyInspectorRowIcon(for: String.self, icon: { _ in\n            Image(systemName: \"text.quote\")\n        })\n        .propertyInspectorRowIcon(for: (any PrimitiveButtonStyle).self, icon: { _ in\n            Image(systemName: \"button.vertical.right.press.fill\")\n        })\n    }\n}\n```\n\n```swift\nstruct InspectableText\u003cS: StringProtocol\u003e: View {\n    var content: S\n\n    var body: some View {\n        Text(content).inspectProperty(content)\n    }\n}\n```\n\n```swift\nstruct InspectableButton\u003cS: PrimitiveButtonStyle\u003e: View {\n    var style: S\n    @State private var tapCount = 0\n\n    var body: some View {\n        Button(\"Tap Me\") {\n            tapCount += 1\n        }\n        // inspecting multiple values with a single function call links their highlight behavior.\n        .inspectProperty(style, tapCount)\n        .buttonStyle(style)\n    }\n}\n```\n\n### Disabling Inspection\n\nTo disable the property inspection:\n\n```swift\nvar body: some View {\n    MyView().propertyInspectorHidden()\n}\n```\n\n## Contributing\n\nWe welcome contributions! If you'd like to contribute, please fork the repository and use a feature branch. Pull requests are warmly welcome.\n\n## License\n\nThe `swiftui-property-inspector` package is released under the MIT License. See [LICENSE](LICENSE) for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fipedro%2Fswiftui-property-inspector","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fipedro%2Fswiftui-property-inspector","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fipedro%2Fswiftui-property-inspector/lists"}