{"categories":[{"label":"Build Tools","url":"https://skillfed.io/packages/category/software-development-build-tools/6"}],"enrichment":{"capability":"Unpack, edit, and re-pack Apple Keynote .key files by converting their proprietary compressed binary format into editable YAML, then back into working Keynote archives.","skillfed_tags":["keynote-automation","presentation-tooling"],"use_cases":["Version Keynote presentations in Git with human-readable diffs instead of binary blobs.","Automate text replacement in Keynote files\u2014e.g., update figures or data from external databases before presenting.","Batch-replace images across multiple presentations using a JSON replacements file.","Extract and inspect the structure and metadata of Keynote files programmatically.","Integrate Keynote editing into CI/CD pipelines or content generation workflows."],"what_it_does":"keynote-parser is a command-line tool and Python library that converts Apple Keynote presentations from their proprietary binary format into editable YAML files and back. Keynote stores presentations as zip archives containing Snappy-compressed Protobuf files; this tool unpacks those into human-readable YAML, making presentations versionable in Git and scriptable via text editors or external tools. You can unpack a presentation, modify text or images in the resulting directory structure, then re-pack it into a working .key file.\n\nThe package is built on top of protobuf, python-snappy, and PyYAML to handle decompression, deserialization, and format conversion. It includes a CLI with commands to unpack, pack, list archive contents, dump individual files, and perform bulk text or image replacement. The tool is actively maintained and supports Keynote version 14.4 as of April 2025, though backwards compatibility between keynote-parser versions and older Keynote file formats is not yet fully supported.","worth_installing":"Yes, if you need to version or automate Keynote presentations. The package is actively maintained, has low install friction, uses a permissive MIT license, and solves a real problem\u2014making binary Keynote files editable and diffable. Be aware that backwards compatibility between keynote-parser versions is limited; if you upgrade the tool, older unpacked YAML files may not re-pack correctly. Requires libsnappy system libraries."},"id":"keynote-parser","links":{"html":"https://skillfed.io/packages/keynote-parser","md":"https://skillfed.io/packages/keynote-parser.md","pypi":"https://pypi.org/project/keynote-parser/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-08-08","license_spdx":null,"license_treatment":"permissive","name":"keynote-parser","python_support":"supports_current","summary":"A tool for manipulating Apple Keynote presentation files."},"popularity":{"monthly_downloads":74420,"position":14838,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"1.14.5.0"}
