{
  "added_at": "2026-10-17",
  "additional_evidence_urls": [
    "https://github.com/storytold/deckcraft/blob/1dc69720db64323370dda061226becb09ad79fd4/Cargo.toml",
    "https://github.com/storytold/deckcraft/blob/1dc69720db64323370dda061226becb09ad79fd4/.github/workflows/ci.yml",
    "https://github.com/storytold/deckcraft/blob/1dc69720db64323370dda061226becb09ad79fd4/apps/deckcraft-web/Trunk.toml",
    "https://github.com/storytold/deckcraft/blob/1dc69720db64323370dda061226becb09ad79fd4/docs/target-app-parity.md",
    "https://github.com/storytold/deckcraft/blob/1dc69720db64323370dda061226becb09ad79fd4/crates/pptx/tests/corpus.rs",
    "https://github.com/storytold/deckcraft/blob/1dc69720db64323370dda061226becb09ad79fd4/crates/pptx/tests/roundtrip.rs",
    "https://github.com/storytold/deckcraft/blob/1dc69720db64323370dda061226becb09ad79fd4/crates/pptx/tests/kept_parts.rs",
    "https://github.com/storytold/deckcraft/blob/1dc69720db64323370dda061226becb09ad79fd4/LICENSE-MIT",
    "https://github.com/storytold/deckcraft/blob/1dc69720db64323370dda061226becb09ad79fd4/LICENSE-APACHE",
    "https://github.com/storytold/deckcraft/blob/1dc69720db64323370dda061226becb09ad79fd4/NOTICE",
    "https://github.com/storytold/deckcraft/blob/1dc69720db64323370dda061226becb09ad79fd4/docs/brand/LICENSE-brand.txt"
  ],
  "category": "reconstruction-cases",
  "description_en": "The authors describe DeckCraft as a clean-room Rust implementation of PowerPoint-style presentation workflows. Its slide model, rendering and command layers support desktop/browser editing and PPTX interchange; reviewed source tests check constructed decks and selected preserved package parts.",
  "description_zh": "作者将 DeckCraft 描述为以 Rust 净室重实现 PowerPoint 风格的演示文稿流程。其幻灯片模型、渲染与命令层支撑桌面／浏览器编辑及 PPTX 交换；所审阅源码测试检查构造的文稿和选定的保留包部件。",
  "entry_url": "https://awesomerea.org/resources/deckcraft-case/",
  "entry_url_zh": "https://awesomerea.org/zh/resources/deckcraft-case/",
  "evidence_url": "https://github.com/storytold/deckcraft/blob/1dc69720db64323370dda061226becb09ad79fd4/README.md",
  "group": "cases",
  "id": "deckcraft-case",
  "json_url": "https://awesomerea.org/resources/deckcraft-case/record.json",
  "kind": "case-study",
  "markdown_url": "https://awesomerea.org/resources/deckcraft-case/index.md",
  "markdown_url_zh": "https://awesomerea.org/zh/resources/deckcraft-case/index.md",
  "name": "DeckCraft: presentation workflow reconstruction and bounded PPTX interchange",
  "name_zh": "DeckCraft：演示文稿流程重建与有限范围 PPTX 交换",
  "record_type": "resource",
  "relationship": "independent-reconstruction",
  "requirement_facets": [
    "prerequisites",
    "testing",
    "testing",
    "limits",
    "license"
  ],
  "requirements": [
    "The pinned workspace identifies version 0.7.0 and declares Rust 1.95+ with Cargo. Linux source builds need ALSA headers and display/window dependencies; the browser path uses Trunk and wasm32-unknown-unknown. Optional craft-fonts inputs affect rendering, with system-font fallback documented.",
    "The reviewed PPTX corpus is authored in code, not collected from PowerPoint. Tests check retained text and content-part counts after saving, then part names and text after another save. Separate tests preserve selected XML metadata.",
    "The dated assessment against PowerPoint for Mac 16.113.4 explicitly says rendering fidelity, performance against PowerPoint and end-to-end workflows with real users’ decks were not measured in that assessment. Feature breadth and readiness percentages are checklist counts or author estimates.",
    "The project is alpha and has documented file-exchange, presentation-workflow, stability and ecosystem gaps. Source snapshots and older assessment rows differ.",
    "Code is MIT OR Apache-2.0 with NOTICE obligations. Fonts/icons retain separate terms, and NOTICE lists the Symphonia audio decoder under MPL-2.0. ArtCraft marks have restricted terms and must be removed from published modified versions except contribution-only forks. Clean-room remains author-attributed."
  ],
  "requirements_zh": [
    "固定版本工作区标明 0.7.0，声明使用 Rust 1.95+ 与 Cargo。Linux 源码构建需要 ALSA 头文件及显示／窗口依赖；浏览器路径采用 Trunk 和 wasm32-unknown-unknown。可选 craft-fonts 输入会影响渲染，文档也说明了系统字体回退。",
    "所审阅 PPTX 语料由代码构造，并非从 PowerPoint 收集。测试检查保存后的文本与内容部件数量，再检查再次保存后的部件名称和文本；另有测试保留选定 XML 元数据。",
    "针对 PowerPoint for Mac 16.113.4 的注明日期评估明确表示，该轮未测量相对 PowerPoint 的渲染保真度、性能或真实用户文稿的端到端流程。功能广度与成熟度百分比是检查表计数或作者估算。",
    "项目处于 alpha，文档记录文件交换、演示流程、稳定性和生态缺口；源码快照与较旧评估条目存在差异。",
    "代码采用 MIT OR Apache-2.0，并有 NOTICE 义务。字体／图标另有条款，NOTICE 将 Symphonia 音频解码器列为 MPL-2.0。ArtCraft 标识采用受限条款，公开发布修改版须移除，仅用于向上游提议改动的 fork 除外。净室仍为作者的说法。"
  ],
  "targets": [
    "app"
  ],
  "url": "https://github.com/storytold/deckcraft",
  "verification": "source-reviewed",
  "verified_at": "2026-10-17"
}
