AI drafts the deck. You keep control.
Turn briefs or Canva decks into polished React presentations, refine every object in the browser, then publish or export without losing your edits.
Open Slide Pro is the editable presentation workflow for AI agents. Start with a brief, reference deck, or Canva source. Refine text, layout, image crops, and layers on the real canvas. Publish the saved result to GitHub Pages or export it to PPTX.
It is an enhanced community fork of Yiwei Ho's Open Slide. The upstream project provides the React canvas, slide runtime, inspector, assets manager, presenter view, themes, and static exports. Open Slide Pro keeps that foundation and adds the practical last mile for production work.
Install the forked CLI from GitHub:
curl -fsSL https://raw.githubusercontent.com/chang416/open-slide-pro/main/install.sh | shThen create a deck:
open-slide-pro init my-deck
cd my-deck
pnpm devPrefer a Mac installer? Download the latest macOS package.
Most AI presentation tools stop when the first draft renders. Open Slide Pro is designed for the next hour: move a portrait, fix a crop, rewrite one headline, preserve the edit through regeneration, and publish the latest version without rebuilding the editor.
| Capability | What it adds |
|---|---|
| Browser workstation | Double-click text to edit; drag objects; change size, rotation, opacity, corner radius, alignment, and layer order; delete, undo, and redo without rewriting the deck source. |
| Presentation-grade image cropping | Fill or fit a frame, drag the image inside it, zoom from 100-300%, and set horizontal or vertical focal points. |
| Persistent human edits | Layout and crop changes live in open-slide-pro-overrides.json, survive AI revisions, and are injected into the public viewer build. |
| GitHub Pages publishing | One command creates or updates a viewer-only site, records the public URL, and queues a follow-up deploy if another edit arrives mid-publish. |
| Canva production workflow | Canva template selection, font and Traditional Chinese glyph checks, frame/crop QA, premium-asset verification, and source-faithful redesign rules. |
| Multiple editable outputs | Routes one confirmed story into React HTML, Canva, Google Slides, native-object PPTX, and high-resolution PDF with an editable master. |
| Agent portability | One skill contract for Codex, Claude Code, OpenCode, and other file-capable coding agents. |
| Quality gates that mean something | Checks copy residue, missing media, weak motion, tiny type, overflow, image misuse, PDF quality, editability, and page-by-page visual evidence before delivery. |
| Token-efficient revisions | A compact edit map lets an agent reopen only the requested page and object instead of rereading the whole deck. |
- Start from a topic, an outline, an existing deck, supplied photos and videos, or a Canva design.
- Preserve names, roles, dates, numbers, QR codes, links, portraits, and source media during redesigns.
- Keep photos replaceable and croppable instead of flattening the whole slide into an image.
- Use deliberate motion with a complete static reading state and reduced-motion support.
- Keep audience builds clean: no editor chrome, no source labels, no debug copy, and no local-only URL presented as a share link.
- Write natural Taiwan Traditional Chinese or English without decorative language mixing or generic AI filler.
| Browser editing workstation | Editable media and asset workflow | Presenter-ready output |
|---|---|---|
The live website includes an interactive slide demo, product walkthroughs, documentation, and the exact installer command.
Open Slide Pro currently keeps the upstream npm package identifiers for compatibility. Build the fork locally, then use the new open-slide-pro CLI alias:
git clone https://github.com/chang416/open-slide-pro.git
cd open-slide-pro
pnpm install
pnpm --filter @open-slide/cli build
node packages/cli/dist/cli.js init my-deck
cd my-deck
pnpm devThe original open-slide binary alias remains available so existing workspaces do not break.
The macOS package installs one canonical open-slide-pro skill and links it into Codex, Claude Code, and OpenCode so every agent reads the same version.
- Download
open-slide-pro-macos.zipfrom the latest release. - Unzip it.
- Double-click Install Open Slide Pro.command.
- The installer validates the package and can enable automatic GitHub Pages publishing. On first use, the skill asks before creating the shared
DecksandAssetsworkspace.
The launcher and installer force a UTF-8 locale, keep console output concise, and store detailed validation output in a log file.
The complete skill is in agent-skill/open-slide-pro. It includes:
- one-batch brief clarification and destination preflight;
- source-faithful redesign and person-role-portrait binding;
- Canva typography, asset, generation, and export checks;
- an immutable browser-workstation template copied into every deck;
- HTML motion, static-state, overflow, and readability gates;
- native PPTX/PDF routing and quality checks;
- persistent edit maps for precise revisions;
- explicit paths and UTF-8 guardrails for weaker models.
| Path | Purpose |
|---|---|
packages/core |
Upstream-compatible React runtime, editor, presenter, inspector, exports, and the open-slide-pro CLI alias. |
packages/cli |
Workspace scaffolder with Open Slide Pro branding and workstation-ready templates. |
agent-skill/open-slide-pro |
Cross-agent presentation workflow, QA scripts, references, and reusable frontend tools. |
installers/macos |
macOS-first installer package and release archive source. |
apps/demo |
Framework and presentation examples. |
apps/web |
Open Slide Pro documentation and landing frontend. |
pnpm install
pnpm build
pnpm typecheck
pnpm test
pnpm checkThe agent skill has its own deterministic validation suite:
python3 agent-skill/open-slide-pro/scripts/self_test.py
python3 /path/to/skill-creator/scripts/quick_validate.py agent-skill/open-slide-proThe package scope @open-slide/*, the upstream React API names, the open-slide deck commands, and open-slide.config.ts remain intact on purpose. They are the published compatibility interface and make future upstream merges practical. Local fork builds additionally expose the open-slide-pro alias; product-facing names, workspace paths, editor controls, documentation, and publishing output use Open Slide Pro.
Open Slide Pro would not exist without Open Slide by Yiwei Ho. Thank you for building and open-sourcing the agent-native React slide foundation.
This repository preserves the upstream MIT license and commit history. Open Slide Pro is an independent community fork maintained by chang416 and is not presented as an official upstream release.
MIT. Upstream copyright and attribution remain preserved.