An agent can turn an outline into a themed deck in one sitting: an LLM writes slide JSON, a dozen fixed layouts render it, and you export to PDF or PPTX. Beautiful.ai's product is the editor, though: slides that re-space themselves as you type, 300+ layouts, brand themes, image and icon libraries and charts linked to live data. A DIY version gives you good drafts, not that editing feel, and editable PowerPoint exports stay rigid unless you accept fixed layouts.
Before you buildBeautiful.ai has no free plan, but a 14-day trial (card required) and a free year for students with a .edu address. If Markdown slides are fine, Slidev, Marp and reveal.js are free.
Build me a slide deck generator and editor to replace Beautiful.ai. Requirements: - Node.js 22 + TypeScript: a Fastify server and a React editor built with Vite. `npm start` serves http://localhost:4400: the deck list at /, the editor at /decks/<id>, present mode at /decks/<id>/present. - Storage: better-sqlite3 in ./data/decks.db: decks, slides (position, layout, JSON content, speaker notes) and themes (fonts, colours, logo path). Images live in ./data/assets. - Layouts: ten fixed React layouts on a 1920x1080 canvas (title, section, bullets, two columns, image left, image right, quote, big number, three cards, table). Text shrinks to fit its box down to a minimum size, so nothing overflows. - Generate: paste an outline or notes; an OpenAI-compatible endpoint (key in .env) returns slide JSON that `zod` validates against the layout schemas, with one retry. Any figure on a slide must appear in the pasted text. - Edit: inline text editing, change a slide's layout (content is mapped across), drag to reorder, duplicate, delete, undo and redo, and one-click theme switching. - Themes: three built in, plus a brand form taking two colours, two Google Font names and a logo. - Export: PDF through Playwright with one page per slide, and PPTX through `pptxgenjs` with editable text boxes and speaker notes. Present mode uses the arrow keys. - Single user. No accounts, no telemetry, local-first. Outbound calls: the LLM endpoint only, and the README lists exactly what text is sent. - Out of scope: real-time collaboration, live-linked charts, image and icon libraries, viewer analytics, animations. - README: setup, the .env keys, installing Playwright's Chromium, and a warning that PPTX output uses fixed layouts and will not re-flow like Beautiful.ai's.
Opens your agent with the prompt filled in, you press enter. Or copy it and paste it into an empty folder.
The first prompt builds the core. Run these one at a time in the same folder to grow it into your own Beautiful.ai.
Add a PPTX importer to the deck editor in this folder. Requirements: - Upload a .pptx; unzip it (`jszip`) and read each slide's XML (`fast-xml-parser`) for the title, text blocks, images and speaker notes. - Map each slide to the closest layout: a title only becomes the title layout, one text block a bullets layout, two columns a two-column layout, and anything else a bullets layout. - Show a report of slides that needed guessing and let me change the layout before saving. - Copy images into ./data/assets and keep their order. - Update the README with what is and is not carried over.
Add a chart layout to the deck editor in this folder. Requirements: - A layout that takes a pasted CSV or table (up to 12 rows) and a chart type: bar, line or pie. - Render it in the editor with Recharts, using the theme's colours. - Export it to PPTX as a native chart (`pptxgenjs` addChart) so it stays editable. - Reject non-numeric value columns with a clear message; never round values. - Update the README.
Add image search to the deck editor in this folder. Requirements: - An image picker on image layouts that searches Unsplash with UNSPLASH_ACCESS_KEY in .env and shows 12 results. - Download the chosen image into ./data/assets and store the photographer and link for the slide's credit line. - Add the credit as small text on the slide and in the PPTX notes. - Cache search results in SQLite for one day. Update the README.
Add a deck linter to the deck editor in this folder. Requirements: - A "Check deck" button that lists problems per slide: more than 60 words, fonts outside the theme, colours outside the palette, missing image alt text and low contrast. - Click a problem to jump to the slide and highlight the element. - Write the rules as small pure functions with tests for each rule. - Update the README.
People who build decks for a living pay to stop fiddling with spacing: slides stay aligned while the content changes, and one theme keeps a team's decks on brand. At $14.50 a month on the annual plan a couple of saved hours covers it; the $45 monthly option suits a single project.
Estimate · Runs on your machine. The only running cost is LLM tokens, a few cents per generated deck. The build is token usage on your agent plan.
| Plan | Monthly | Annual, per month | What you get |
|---|---|---|---|
| Pro | $45 | $14.50 | Unlimited AI content generation, 300+ Smart Slide layouts, AI images and writing help, custom theme builder, PowerPoint import and export, embedded video and audio. |
| Team | $50 | $40 | Everything in Pro plus a shared workspace, real-time co-editing, slide and asset libraries, version control, locked slides, live-linked charts, viewer analytics and translation into 100+ languages. |
| Enterprise | custom | — | SSO, SCIM provisioning, audit logs, brand guardrails, advanced permissions, priority support, SOC 2 Type II, GDPR and CCPA. |
No free plan: a 14-day trial needs a card. Students with a valid .edu email get a free year.
Kinda. The core is a weekend build with the prompt on this page, but real gaps remain: Smart Slides that re-layout as you edit, and the 300+ layout library, Real-time co-editing, locked slides and version history.
About $45 a month on the Pro, billed monthly (the single-project option) plan per seat, $540 a year (checked 2026-10-19).
Smart Slides that re-layout as you edit, and the 300+ layout library; Real-time co-editing, locked slides and version history; Charts and tables linked to live data; Viewer analytics on shared decks; Image and icon libraries and one-click theme switching. If any of those matter to you, keep paying.
Yes: Presenton (open source), Slidev (open source), Marp (open source).