OPF FAQ
Common questions about Open Presentation Format — the open JSON format for AI-authored, diffable slide decks.
What is OPF?
OPF (Open Presentation Format) is an open, MIT-licensed JSON format for slide decks. A deck is a single plain-JSON document that describes slides, content payloads, narrative beats, and portable design hints. It is built for machine authorship: LLMs can generate it reliably, schemas can validate it, and git can diff it. The spec section holds the formal reference.
Why JSON instead of PPTX?
PPTX is a zipped bundle of OOXML files. Humans can't read or diff it, version control sees every save as a binary blob change, and language models can't reliably author it. OPF is plain JSON: readable in any editor, diffable line by line, validatable against a JSON Schema, and directly producible by LLM structured output. See the full format comparison.
Is OPF free to use?
Yes. The format, schemas, catalogs, and the @openpresentation/opf package are MIT-licensed. There is no signup, paywall, or vendor lock-in. Anyone can implement OPF readers, writers, and renderers without permission or branding requirements.
How do I validate an OPF file?
Validate against the canonical JSON Schema at https://openpresentation.org/schema/opf/v1 with any JSON Schema validator — Ajv in Node.js, or ajv-cli in a terminal or CI pipeline. The validation guide has copy-paste snippets.
How is OPF different from Markdown slide tools like Marp or Slidev?
Markdown slide tools are authoring and rendering tools for humans who write Markdown. OPF is a machine-readable interchange format: structured JSON with a schema, designed for programmatic generation, validation, and conversion. Markdown is great for hand-written talks; OPF is built for pipelines where software or AI produces, inspects, or transforms decks.
How do I render or convert an OPF deck?
OPF is an interchange format, not a renderer. Any OPF-compatible tool can render a deck to slides, HTML, or OOXML. The examples section shows real decks that renderers and converters can target, and the GitHub repository documents the rendering contract.
Where is the canonical OPF schema?
The canonical OPF v1 JSON Schema is served at https://openpresentation.org/schema/opf/v1. Reference it in the $schema field of every deck so editors and validators resolve it automatically. The browsable version is the OPF schema reference.
What file extension does OPF use?
The convention is *.opf.json. The .json suffix keeps editors, linters, validators, agents, and git treating deck source as plain JSON, while the .opf marker identifies the document contract.
How do I contribute to OPF?
The format is developed in the open at github.com/OpenPresentation/opf. Issues and pull requests are welcome for the spec, schemas, catalogs, and examples. The community page describes governance and contribution norms.