{"id":28564038,"url":"https://github.com/appium/ios-uicatalog","last_synced_at":"2025-07-26T22:06:46.337Z","repository":{"id":31498545,"uuid":"35062792","full_name":"appium/ios-uicatalog","owner":"appium","description":"Apple UICatalog App","archived":false,"fork":false,"pushed_at":"2024-03-29T11:14:50.000Z","size":11708,"stargazers_count":82,"open_issues_count":2,"forks_count":84,"subscribers_count":21,"default_branch":"master","last_synced_at":"2025-05-26T01:17:12.210Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Objective-C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/appium.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},"funding":{"open_collective":"appium"}},"created_at":"2015-05-04T22:13:03.000Z","updated_at":"2025-05-05T20:16:31.000Z","dependencies_parsed_at":"2024-06-18T18:17:42.985Z","dependency_job_id":"a54b7ded-da2e-4bc1-84b3-796ce1cfdfc1","html_url":"https://github.com/appium/ios-uicatalog","commit_stats":{"total_commits":84,"total_committers":10,"mean_commits":8.4,"dds":0.5238095238095238,"last_synced_commit":"af1c7358e2b455ff99c25e34466212cbc86fbce6"},"previous_names":[],"tags_count":31,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appium%2Fios-uicatalog","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appium%2Fios-uicatalog/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appium%2Fios-uicatalog/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appium%2Fios-uicatalog/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/appium","download_url":"https://codeload.github.com/appium/ios-uicatalog/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appium%2Fios-uicatalog/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259080989,"owners_count":22802404,"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":[],"created_at":"2025-06-10T13:09:23.058Z","updated_at":"2025-06-10T13:09:24.025Z","avatar_url":"https://github.com/appium.png","language":"Objective-C","funding_links":["https://opencollective.com/appium"],"categories":[],"sub_categories":[],"readme":"# ios-uicatalog\n\nA simple test application for iOS, used by [Appium](https://github.com/appium/appium)\nfor certain tests. For more information, see the [docs for UICatalog](./UICatalog/uicatalog-info.md)\nor the [docs for UIKitCatalog](./UIKitCatalog/uicatalog-info.md)\n\nUICatalog is for Xcode 10-\nUIKitCatalog is for Xcode 11+\n\nThis package exposes the following:\n1. `uiCatalog`\n      a. `relative`\n          i. `iphoneos`: relative path to the real device app\n          ii. `iphonesimulator`: relative path to the simulator app\n      b. `absolute`\n          i. `iphoneos`: absolute path to the real device app\n          ii. `iphonesimulator`: absolute path to the simulator app\n1. `uiKitCatalog`\n      a. `relative`\n          i. `iphoneos`: relative path to the real device app\n          ii. `iphonesimulator`: relative path to the simulator app\n      b. `absolute`\n          i. `iphoneos`: absolute path to the real device app\n          ii. `iphonesimulator`: absolute path to the simulator app\n\nE.g.,\n```json\n{\n  \"uiCatalog\": {\n    \"relative\": {\n      \"iphoneos\": \"UICatalog/build/Release-iphoneos/UICatalog-iphoneos.app\",\n      \"iphonesimulator\": \"UICatalog/build/Release-iphonesimulator/UICatalog-iphonesimulator.app\"\n    },\n    \"absolute\": {\n      \"iphoneos\": \"/node_modules/ios-uicatalog/UICatalog/build/Release-iphoneos/UICatalog-iphoneos.app\",\n      \"iphonesimulator\": \"/node_modules/ios-uicatalog/UICatalog/build/Release-iphonesimulator/UICatalog-iphonesimulator.app\"\n    }\n  },\n  \"uiKitCatalog\": {\n    \"relative\": {\n      \"iphoneos\": \"UIKitCatalog/build/Release-iphoneos/UIKitCatalog-iphoneos.app\",\n      \"iphonesimulator\": \"UIKitCatalog/build/Release-iphonesimulator/UIKitCatalog-iphonesimulator.app\"\n    },\n    \"absolute\": {\n      \"iphoneos\": \"/node_modules/ios-uicatalog/UIKitCatalog/build/Release-iphoneos/UIKitCatalog-iphoneos.app\",\n      \"iphonesimulator\": \"/node_modules/ios-uicatalog/UIKitCatalog/build/Release-iphonesimulator/UIKitCatalog-iphonesimulator.app\"\n    }\n  }\n}\n```\n\n\n### Building\n\n`npm install` will build the app for a simulator in `UICatalog/build` directory.\nIf you want also to build for a real device,\nset the environment variable `IOS_REAL_DEVICE` or `REAL_DEVICE` to a truthy value.\n\n```\nREAL_DEVICE=1 npm install\n```\n\nIf any special build information is needed, the `XCCONFIG_FILE` environment\nvariable can be set to the path to an `xcconfig` file.\n\n\n#### notice\n\nUICatalog can work on iOS13, but it has issues such as xctest framework returns wrong coordinate.\nIt is because UICatalog does not use newer framework APIs such as safeArea.\n\nPlease use UIKitCatalog instead to work properly. It will be built automatically\nduring `npm install`, or by running `npm run build`.\n\nThen, the apps will be in `UIKitCatalog/build` directory.\n\n\n## Watch\n\n```\nnpm run watch\n```\n\n## Test\n\n```\nnpm test\n```\n\n## `webView.isInspectable`\n\nSince iOS 16.4, the `WKWebView` insatnce needs to enable `isInspectable` to make WebView available.\nThe sample app enables it.\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fappium%2Fios-uicatalog","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fappium%2Fios-uicatalog","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fappium%2Fios-uicatalog/lists"}