Start here
Getting Started
Start from a slide, source folder, or creative skill. Have your Agent create an OpenPress Workspace, or run the CLI directly.
Prerequisites. Please ensure your environment has Node.js 20+ installed along with npm and npx. For framework development or Cloudflare Pages deployment, Node.js 24 is recommended. For PDF/image export or deployment, please install Chromium and wrangler.
Next, you will learn how to create an OpenPress Workspace, edit document content, and preview and deploy your first document in real time.
Step 1: Create Your Workspace
You can choose to start via an AI Agent or directly using the CLI. We will guide you using the simplest method.
Create using CLI
Open your terminal and run the following command to create a new presentation:
npm create @open-press@latest my-deck -- \
--type slides \
--title "Transport models"
Then enter the project folder and install dependencies:
cd my-deck
npm install
Step 2: Start Live Preview
Before writing content, let’s start the Workbench to view the results in real time. Please run:
npm run dev
Then open http://127.0.0.1:5173/workspace in your browser. You will see the project gallery. When you modify files and save, the screen will automatically update.
Step 3: Edit Document Content
All your content is stored under the press/ folder. Let’s edit your first slide.
In your editor, open press/<your-project-name>/slides/intro/slide.tsx.
Change the default content to your welcome text:
import type { SlideMeta } from "@open-press/core";
export const meta = {
layout: "default",
description: "Opening slide",
} satisfies SlideMeta;
export default function Slide() {
return <div>Welcome to my first OpenPress presentation!</div>;
}
After saving, switch back to your browser, and you will see the content has updated.
Step 4: Build and Inspect
When you have finished editing, we can validate the document’s structure and output:
npm run build # Validates + renders dist-react/
npm run preview # Serves dist-react/ as a static site
npm run openpress:pdf # Optional: Generate PDF locally
If validation fails, the build aborts before Vite runs, so a green build means the document shape is consistent. See CLI · Lifecycle to understand what each step does.
Step 5: Deploy
OpenPress requires explicit confirmation for any deployment — no silent publishing. Configure an adapter under the "openpress.deploy" field in your workspace’s package.json, then run:
npm run openpress:deploy:dry-run # Preview step
npm run openpress:deploy -- --confirm # Publish
The deploy command builds, generates PDF artifacts, writes deploy.json metadata, and hands off to the configured adapter. If a host-specific adapter has not been implemented yet, use the generated build output directly and perform the publish step outside of OpenPress.
Next Steps
- Slides Architecture — Each folder maps to a slide’s layout,
SlideMeta, slide ordering, andobjectIdinjection. - Component Architecture — Understand how Workspace, Press, and Frame compose.
- Working with Agents — How agents should initialize, edit, validate, and stop at boundaries.
- Themes — The
press/<slug>/themes/contract. - Components → Press — Base components of the Press Tree.
- Comment Markers — Inline review workflow.
- CLI — Complete command reference (three levels).