Learning in public — this documentation is written in the open and updated as the engine moves.
paged.Paged Docs
Plugins

paged.slide — presentations

The presentation plugin — PowerPoint decks opened as native pages with their masters, charts, tables and notes, reworked with layout tools and exported back to .pptx.

Tier: IntermediateIntermediateIIexplanationDraft

In short paged.slide makes presentations a document type. A PowerPoint .pptx opens as native pages: one slide per page, layouts as master spreads, shapes, charts, tables and SmartArt as editable native content, and speaker notes kept with each slide. PowerPoint itself is the reference: geometry, baselines, chart bars and table styles are checked against what it draws. The editor loads it; its npm package is not published yet, and parts of it are still in development.

What it does

  • Reads .pptx, .ppsx and .potx: masters, layouts, themes, every preset and custom shape, text, pictures, charts, tables (including PowerPoint's built-in table styles) and SmartArt drawings.
  • Resolves PowerPoint's inheritance (theme, master, layout, slide) and writes the deck as a native document, a page per slide.
  • A slide sorter (reorder, duplicate, delete, hide) and a speaker-notes panel; a new slide from a layout. Slides, layouts and placeholders are objects that scripts and panels read and write (notes, the hidden flag, the transition).
  • Fonts the deck embeds are used when their licence allows installing or editing them; restricted and preview-only faces are named, not used.
  • Export back to .pptx from the original deck: the page order, duplicated and deleted slides, hidden flags, speaker notes and sections, checked by PowerPoint opening the written deck without a repair prompt. An unedited document exports the original bytes.
  • In development: writing edited slide content into the exported deck, and a slideshow with a presenter view.

How it's built

A Cargo workspace (pptx-core, pptx-import, slide-resolve, slide-geom, slide-chart, slide-idml, pptx-export) over the shared OOXML package layer, plus a TS bundle (@paged-media/slide). Scripts drive PowerPoint to record the answers the tests compare against.

Capability state

● shipped & verified · ○ shipped, re-test pending · ◍ shipped, untested · ◐ partial · ✗ failing · · planned

Plugin · slide 15 features · 100% green

FeatureSlide
PowerPoint charts drawn as native shapes from their cached values
plugin-slide.charts
◐
A deck's embedded fonts reach the document, within their licences
plugin-slide.embedded-fonts
◐
A PPTX opens as native slides (generated IDML, inheritance resolved)
plugin-slide.import-native
◐
New slide from layout; layout editing
plugin-slide.layouts
◐
Object model — slides, layouts and placeholders addressable through host.objects
plugin-slide.object-model
●
Engine and host features for slides — page order, page metadata, masters, page images, go to page
plugin-slide.page-doors
◐
PowerPoint as the oracle — authored fixtures and recorded answers
plugin-slide.powerpoint-oracle
●
Export a .pptx (original bytes if unedited, else regenerated)
plugin-slide.pptx-export
◐
Read a .pptx into the slide IR
plugin-slide.pptx-read
●
DrawingML preset geometries become native paths
plugin-slide.preset-geometry
●
Slide sorter — thumbnails, reorder, duplicate, delete, hide
plugin-slide.slide-sorter
◐
Slideshow with transitions and builds, presenter view
plugin-slide.slideshow
·
SmartArt drawn as native shapes from PowerPoint's laid-out drawing
plugin-slide.smartart
◐
Speaker notes per slide
plugin-slide.speaker-notes
◐
PowerPoint table styles resolved as PowerPoint draws them, kept as native table styles
plugin-slide.table-styles
◐

Recent activity

On this page