Export
One command to a self-contained static HTML site or PDF.
open-frame build produces a plain static site under dist/. The output is
zero-runtime — everything renders on the client, but no server is needed.
Static HTML
npm run build
npm run preview # serves dist/ for sanity-checkingdist/ is portable. Drop it on Vercel, Cloudflare Pages, Netlify, Zeabur,
GitHub Pages — anything that hosts files.
The dev server can print the active deck to PDF via the browser's native
print pipeline. From the toolbar pick Export → PDF, or open the deck at
?print=1 and use Cmd/Ctrl-P. The runtime sets paper size to 1920×1080
landscape so each frame is exactly one page.
What gets shipped
The build pipeline only includes:
- The decks under
frames/. - The assets each deck imports.
- The runtime — viewer, scaler, present mode (configurable; see below).
You can trim the surface area for a public share by toggling fields in
open-frame.config.ts:
import type { OpenFrameConfig } from '@open-frame/core';
const config: OpenFrameConfig = {
build: {
showFrameBrowser: false, // hide the deck index
showFrameUi: false, // hide on-canvas UI (toolbar etc.)
allowHtmlDownload: false, // hide the "download HTML" button
},
};
export default config;