{"id":13711613,"url":"https://github.com/clo4/apple_device_identifiers","last_synced_at":"2025-05-07T05:41:58.525Z","repository":{"id":41890934,"uuid":"409121759","full_name":"clo4/apple_device_identifiers","owner":"clo4","description":"A best-effort compilation of all of Apple's device identifiers","archived":false,"fork":false,"pushed_at":"2023-10-04T10:47:54.000Z","size":63,"stargazers_count":42,"open_issues_count":6,"forks_count":8,"subscribers_count":8,"default_branch":"main","last_synced_at":"2024-11-13T22:34:57.324Z","etag":null,"topics":["apple","device-identifier","mdm"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"unlicense","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/clo4.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2021-09-22T08:23:50.000Z","updated_at":"2024-10-02T07:12:59.000Z","dependencies_parsed_at":"2024-11-15T05:01:37.109Z","dependency_job_id":null,"html_url":"https://github.com/clo4/apple_device_identifiers","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clo4%2Fapple_device_identifiers","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clo4%2Fapple_device_identifiers/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clo4%2Fapple_device_identifiers/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clo4%2Fapple_device_identifiers/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/clo4","download_url":"https://codeload.github.com/clo4/apple_device_identifiers/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225082991,"owners_count":17418214,"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":["apple","device-identifier","mdm"],"created_at":"2024-08-02T23:01:09.881Z","updated_at":"2024-11-17T19:38:38.951Z","avatar_url":"https://github.com/clo4.png","language":"TypeScript","funding_links":[],"categories":["Tools :hammer_and_wrench:"],"sub_categories":[],"readme":"# apple_device_identifiers\n\n[Structure](#structure) • [Usage](#usage) • [Sources](#sources--resources) •\n[Contributing](#contributing) • [License](#license)\n\nA best-effort compilation of Apple's device identifiers, starting from the late\n2000s. Everything in this repository is public domain (see\n[UNLICENSE](./UNLICENSE)), so you can vendor any files you need without having\nto give credit.\n\nIf you notice something wrong or missing, please open an issue!\n\n## Structure\n\n### devices/*.json\n\nThese files contain the mappings of name to ID. They're manually curated.\n\n### devices.json, ids.json\n\nGenerated JSON files containing all the data from the JSON files above.\n\n### mod.ts\n\nA generated TypeScript module that makes it easy to use this data from Deno.\n\n### build.ts\n\nA Deno script that builds devices.json and mod.ts using the data in the devices\ndirectory. See [#contributing](#contributing).\n\n## Usage\n\nAs this project is public domain, you can vendor the JSON files you need, or\nrequest them from githubusercontent. No crediting is required, no license to add\nto a giant list.\n\n---\n\nThere's also a TypeScript module generated for Deno. Because this repository is\nnot versioned, you must always pin to a specific commit hash.\n\n\u003csub\u003e\u003cb\u003edeps/devices.ts\u003c/b\u003e\u003c/sub\u003e\n\n```javascript\nexport * from \"https://raw.githubusercontent.com/SeparateRecords/apple_device_identifiers/\u003cCOMMIT\u003e/mod.ts\";\n```\n\n\u003csub\u003e\u003cb\u003emod.ts\u003c/b\u003e\u003c/sub\u003e\n\n```typescript\nimport { devices, Identifier } from \"./deps/devices.ts\";\n\nconst id: Identifier = devices[\"iPad mini 3\"];\n```\n\nLibraries should use `AnyIdentifier` instead of `Identifier` to allow any string\nto be assigned, while still providing suggestions.\n**[Read the documentation][docs]** for information on the exported value and\ntypes.\n\n[docs]: https://doc.deno.land/https/raw.githubusercontent.com/SeparateRecords/apple_device_identifiers/main/mod.ts\n\n## Sources \u0026 Resources\n\nTo the best of my knowledge, there's no official list of identifiers, and even\nthe products themselves don't always have canonical names. As a result, the data\nin this repository had to be gathered from a variety of sources.\n\n- **https://everymac.com** - a pretty good compilation, but the website is slow\n  and can't be used in code.\n- **https://www.theiphonewiki.com** - a great resource to reference for mobile\n  devices.\n- **https://github.com/blacktop/ipsw** -\n  [this page](https://blacktop.github.io/ipsw/docs/commands/device-list/) in the\n  docs has IDs, but not all of them have descriptive product names.\n- **[This Gist by @adamawolf](https://gist.github.com/adamawolf/3048717)** -\n  lists most mobile devices.\n- **[Geekbench Browser](https://browser.geekbench.com)** - when new devices are\n  released, reviewers tend to upload their scores.\n- **Xcode database files** - Xcode includes databases of device traits\n  ([see below](#list-device_traitsdb-files))\n- **Apple's \"Identify your device\" pages** - Mac pages have identifiers, but\n  they're not consistent.\n- **Various threads on Reddit** - thanks, kind internet strangers!\n\n### List device_traits.db files\n\nThese can be opened using the sqlite3 CLI, or a GUI like\n[DB Browser for SQLite](https://sqlitebrowser.org/). The table of interest is\n`devices`.\n\n```bash\nfind /Applications/Xcode.app/Contents/Developer/Platforms -name 'device_traits.db' 2\u003e/dev/null\n```\n\n## Contributing\n\nAlways run the `build` task before committing, or use `watch` while making\nchanges.\n\n```bash\ndeno task build  # generate files\ndeno task watch  # watch for changes\n```\n\nTo add a new class of devices, just add a new JSON file to the\n[devices](devices) folder.\n\n## License\n\nSince I'm probably not the only one who needs this, I'm releasing this to the\npublic domain.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclo4%2Fapple_device_identifiers","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fclo4%2Fapple_device_identifiers","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclo4%2Fapple_device_identifiers/lists"}