Slides belong in
your Hono app.

Compile MDX to Hono JSX, then add viewer, presentation, presenter, and print routes to an existing Hono application.

Live deckGET /demo/product/embed

Compiled from MDX and mounted in this HonoX app. Use the slide halves or arrow keys to navigate.

Open full size

Compile the deck and mount its router.

Node is used only at compile time. Mount the generated router with app.route(decks.mountPath, decks.router()). The Vite or Wrangler dev command can also watch deck changes.

Setup for npm, pnpm, Yarn, and Bun
Terminal
npm install hono-decks
npx hono-decks init
npx hono-decks compile

Generated routes

The standard router creates every surface except external embed. Disable unused routes in configuration and add authentication in the Hono application.

Route / APIPurpose
/:slugIframe viewer and navigation controls
/:slug/renderIsolated slide runtime
/:slug/presentationProjection surface
/:slug/presenterNext preview and speaker notes
/:slug/printBrowser print / PDF source