Changelog
Published open-source packages for authoring, layout, editing, preview and editable PowerPoint export.
Current published package set
These packages are available under @openpresentation on npm. Publication dates are UTC and were verified on 2026-09-17. No paid service or model-provider account is required.
| Package | Version | Published (UTC) | Changes |
|---|---|---|---|
| opf | 0.11.0 | Add ColorRef and document variables, optional payload ids and extensions, bundlePresentation, shared resolveColorRef, and format-card documentation for the reference layer. | |
| opf-render | 0.9.0 | Resolve ColorRef and variables before SVG paint on core 0.11.0 with coordinated geometry and font preparation. | |
| opf-pptx | 0.9.1 | Hex-resolve ColorRef and variables for editable export and import on core 0.11.0 with renderer 0.9.0. | |
| opf-editor | 0.8.0 | Bump peers for core 0.11.0 ColorRef validation, shared payload id namespace during pagination and transfer, and validation warnings forwarding. | |
| cli | 0.9.0 | Bundle core 0.11.0 reference-layer schemas, catalogs, bundle command, and coordinated local validation. |
Core schema support, browser behavior, rendering and native export fidelity have separate checks. The 805-slide renderer corpus passes the reviewed baseline, including 41 intentional quote-source updates. Fresh published-package checks cover offline authoring, editing, pagination, export, reimport and undo. Real Windows PowerPoint checks cover twelve wide/portrait quote slides with editable text, glyph containment and save/reopen. Their text survives reimport in reading order, but the original OPF quote structure is not reconstructed. Earlier feature and styled-table checks remain separately recorded. General chart geometry, text wrapping and imported table geometry still have limits; broad pixel equivalence is not established.
Verification evidence and remaining limits. OPF is pre-1.0; minor releases can add schema forms that consumers need to handle.
Full package histories: renderer · editor · PowerPoint exporter.
Core package history
Every published version of @openpresentation/opf, newest first.
Core 0.11.0: Color references and catalog bundling
- Add ColorRef on styled table cells and documented run colors; top-level variables with var: references; optional payload id and extensions.
- Add bundlePresentation and opf bundle to inline catalog records transitively; export resolveColorRef and normalizeHexColor.
- Ship format-card documentation and a validated color-references fixture outside the examples corpus until the next renderer golden update.
Core 0.10.1: Consistent layout and content contracts
- Correct metric layout placeholders, add quote and timeline layouts, align content classifications and preserve text-style bullets as valid text payloads.
- Keep stable number layout IDs while using metric placeholders. Add quote-1x and timeline-1x; document picture/image and media/video mappings.
- Coordinate editor 0.7.1, renderer/PPTX 0.8.1 and CLI 0.8.1. Browser and package checks remain separate from native PowerPoint visual fidelity.
Core 0.10.0: Offline lint and shared accepted layout
- Add local lint with source locations, catalog context and explicit design contracts; CLI 0.8.0 exposes opf lint for humans and agents.
- Share accepted metric, timeline, card and text geometry while preserving authored whitespace and selected readability floors.
- Require Node 24 and expose grid-score-v8 explanations. Shared furniture and prepared font-shaping drafts remain separate; native compatibility is independently verified.
Core 0.9.0: Shared code layout and source-preserving pagination
- Measure code source, filename and language together, retaining literal tabs, blank lines and exact source boundaries.
- Share accepted code geometry with preview and editable PowerPoint export; paginate complete source fragments according to the selected readability floor.
- Use deterministic grid-score-v3 with bounded fitting and explicit overflow diagnostics. Full automatic layout repair and Auto arrange remain under development.
Core 0.8.0: Shared quote layout and readable pagination
- Measure quote body, attribution and source together, with accepted lines shared by preview and native export.
- Persist selected readability floors during pagination and expose optional candidate scores and decision explanations.
- Adopt deterministic grid-score-v2 and stricter generated content payload types. Full automatic layout repair remains under development.
Core 0.7.0: Styled and merged tables
- Add table cells with value, optional style, rowSpan and colSpan while retaining scalar and rich-array cells.
- Validate merge ownership and covered null positions; preserve connected vertical merges during pagination.
- Share anchor geometry and editable .value paths across the coordinated renderer, editor and PPTX packages.
Core 0.6.0: Content-aware table layout
- Share table row geometry and fitting across composition, rendering and native export.
- Grow multiline rows into available space and reduce spare height before shrinking readable text.
- Preserve complete rows, report real overflow and keep short-table geometry unchanged.
Core 0.5.0: Rich table content
- Accept rich TextRun arrays in table cells and headers alongside existing scalar values.
- Measure actual run styles for overflow and pagination, preserving complete rows and repeated headers.
- Generated types include the additional rich-array form; exhaustive scalar-only consumers need updating.
Core 0.4.1: Complete embedded image example
- Replace the truncated PNG in the asset-source-forms example with a complete project-authored image.
- Verify the corrected example against the renderer baseline and coordinated image/export checks.
Core 0.4.0: Shared composition and local tools
- Add nested composition, weighted tracks, measured rich text and lists, overflow diagnostics and explicit pagination.
- Expose browser-safe composition, pagination and CSV/TSV/JSON data conversion APIs.
- Add six portable authoring, layout, preset, editing, export and inspection skills in the repository.
- Use smaller structural TypeScript schema/catalog declarations; the narrative index uses records instead of templates.
Core 0.3.0: Examples, documentation and reference warnings
- Add non-fatal warnings for unknown catalog identifiers and broken catalog cross-links.
- Ship validated example decks, reference documentation and the pinned repository README through package exports.
- Document design precedence, content forms and the boundary between the open format and downstream services.
Core 0.2.2: Flexible content shorthand
- Accept mixed slide-root payloads as implicit blocks when no explicit type, blocks or regions are present.
- Allow a single audience string alongside the existing array form.
Core 0.2.1: Public package and raw specification
- Publish raw schemas, catalogs, references and layout previews through the canonical OPF package.
- Add typed spec-file manifests and provenance-enabled publication.
- Correct the United Kingdom chart catalog identifier to united-kingdom. The internally prepared 0.2.0 version was never published.
Core 0.1.0: Initial npm release
- Publish the Open Presentation Format package with schemas, catalogs, generated types and local validation.
- Establish the .opf.json convention for complete presentation documents.
Source metadata
The documentation snapshot and published package history are tracked separately.