{
  "added_at": "2026-11-06",
  "additional_evidence_urls": [
    "https://github.com/den-frie-vilje/cupertino-files/blob/9550fc8163c64774f4400b98e0542823da59f8b6/research/README.md"
  ],
  "category": "binary-libraries",
  "description_en": "cupertino-files is a TypeScript library for reading and writing modern Apple Pages, Numbers, and Keynote documents. It models their undocumented file structures from real documents, exposes editing APIs and CLI tools, and publishes format notes and a language-neutral conformance suite.",
  "description_zh": "cupertino-files 是读写现代 Apple Pages、Numbers 和 Keynote 文档的 TypeScript 库。它通过实际文档研究未公开的文件结构，提供编辑 API、命令行工具、格式说明及跨语言一致性测试集。",
  "entry_url": "https://awesomerea.org/resources/cupertino-files/",
  "entry_url_zh": "https://awesomerea.org/zh/resources/cupertino-files/",
  "evidence_url": "https://github.com/den-frie-vilje/cupertino-files/blob/9550fc8163c64774f4400b98e0542823da59f8b6/README.md",
  "group": "tools",
  "id": "cupertino-files",
  "json_url": "https://awesomerea.org/resources/cupertino-files/record.json",
  "kind": "tool",
  "markdown_url": "https://awesomerea.org/resources/cupertino-files/index.md",
  "markdown_url_zh": "https://awesomerea.org/zh/resources/cupertino-files/index.md",
  "name": "cupertino-files",
  "name_zh": "cupertino-files iWork 文档格式工具包",
  "record_type": "resource",
  "relationship": "foundation",
  "requirement_facets": [
    "prerequisites",
    "prerequisites",
    "limits",
    "license"
  ],
  "requirements": [
    "Node.js 22 or later or a modern browser; the package is ESM-only.",
    "Modern Pages, Numbers, or Keynote documents for reading and editing.",
    "iWork ’09 XML and password-protected documents are declined.",
    "MIT License."
  ],
  "requirements_zh": [
    "需要 Node.js 22 或更新版本，或现代浏览器；软件包仅支持 ESM。",
    "读取和编辑时需要现代 Pages、Numbers 或 Keynote 文档。",
    "不接受 iWork ’09 XML 文档或受密码保护的文档。",
    "MIT 许可证。"
  ],
  "targets": [
    "app"
  ],
  "url": "https://github.com/den-frie-vilje/cupertino-files",
  "verification": "source-reviewed",
  "verified_at": "2026-11-06"
}
