Getting started
LessonPlanner One is a free, browser-based tool for building BOPPPS lessons — Bridge-in, Objectives (Learning Outcomes), Pre-assessment, Participatory learning, Post-assessment, Summary — and turning them into slides, worksheets, handouts and PowerPoint decks. There is no account and no sign-in, and nothing you create is sent to a server.
Your first five minutes
- Open the app. On first visit you'll see a data storage notice — read it and confirm. It explains that everything lives in your browser, so exporting is how you keep your work.
- The template picker opens next. Choose a starting point (see Templates) or import an existing lesson JSON file.
- You land in the Slides tab with your deck loaded. Fill in the lesson header — course topic, instructor name, email — at the top of the page.
- Open the Insert panel on the right (]) and start adding blocks to the current slide.
- When you're done, name your file in the toolbar and press Save to download a versioned JSON backup, then export to HTML, PDF or PowerPoint for delivery.
What you need
Current Chrome, Edge, Firefox or Safari. No install, no plugins, no extensions.
Nothing to sign up for. No email required, and no data is collected from your lessons.
The editor works offline once loaded; embedded YouTube/Vimeo playback and server-hosted images need a connection.
The workspace
The top navigation bar is always visible and never scrolls away. It holds four workspaces plus utility links.
The top navigation bar
| Control | What it does |
|---|---|
| New | Reopens the template picker so you can start a fresh lesson from a preset or import a file. |
| Planner | The quick, form-based BOPPPS lesson plan. Good for drafting and for printable lesson-plan documents. |
| AI Prompt | The AI Prompt Generator — builds structured prompts and JSON templates for an AI assistant. |
| Slides | The main lesson and slide builder. This is where most work happens. |
| Settings | The Template Controls page — session details, layout, design and export options in one long form. |
| Features / Examples / Help | Open the feature list, sample lessons, and this guide in a new tab. |
| ☕ Support | Link to the project's Buy Me a Coffee page. Entirely optional. |
| Sun / Moon | Switches the whole app between light and dark mode. The choice is remembered in your browser. |
How the three editors relate
They are separate tools that share content in one direction: Planner → AI Prompt → Slides. You can start anywhere, but that path is the intended flow.
Sketch the lesson in prose: bridge-in, outcomes, activities, timings. Export it as a printable lesson-plan table or hand it to the AI Prompt tab.
Turn the outline into a detailed prompt plus a JSON template an AI can fill in. Pull the Planner's content in with Load from Planner.
Build, style and export the finished deck. Import the AI's completed JSON here, or build from scratch.
Light and dark mode
Two switches do the same thing: the sun/moon pair in the top bar, and Light Mode / Dark Mode in the Slides toolbar's Settings (gear) menu. The setting is per browser and applies to the editor chrome — it does not change the colours of your slides or of anything you export.
↑ Back to topKeyboard shortcuts
Shortcuts are ignored while you're typing in a text field, so they never interrupt writing.
Editor shortcuts
| Key | Action |
|---|---|
| E | Toggle between Edit and Preview mode (works in full screen too). |
| P | Switch to Preview mode. |
| F | Enter or leave full-screen presentation. |
| [ | Show or hide the left Sections outline drawer. |
| ] | Show or hide the right Insert tools panel. |
| Esc | Leave full screen; also closes most dialogs. |
| Ctrl/⌘ + Z | Undo the last structural change (add, delete, move, slide edit). |
Full-screen presentation
| Key | Action |
|---|---|
| → or Space | Next slide. |
| ← | Previous slide. |
| Esc or F | Exit full screen. |
Slide Designer (16:9 canvas)
| Input | Action |
|---|---|
| Click | Select an object. Shift/Ctrl/⌘ + click adds to the selection. |
| Drag on empty canvas | Rubber-band marquee — selects everything it touches. |
| Ctrl/⌘ + A | Select every object on the slide. |
| Ctrl/⌘ + G | Group the selection so it moves and resizes as a unit. |
| Ctrl/⌘ + Shift + G | Ungroup. |
| Arrow keys | Nudge the selection by one step. |
| Shift + arrows | Nudge by a larger step. |
| Delete / Backspace | Delete every selected object. |
| Esc | Clear the selection. |
| Double-click | Edit the block's content. |
This help page
Press / or Ctrl/⌘ + K to focus the search box, ↑/↓ to move through results, Enter to open one, and Esc to clear.
↑ Back to topPlanner
The Planner is a single-page lesson-plan form: one field per BOPPPS stage, plus a participatory-learning activity table with durations and materials. It's the fastest way to think a lesson through before you worry about slides.
What you fill in
- Document name, week and version — used for the exported file name.
- Lesson topic.
- Bridge-in — how you connect with learners and introduce the topic.
- Learning outcomes — bullets or numbers; use measurable action verbs.
- Pre-assessment — how you check prior knowledge.
- Participatory learning — repeating rows of activity description, duration in minutes, and materials needed.
- Post-assessment — how you verify the outcomes were met.
- Summary — key points and what comes next.
- Reflection — what worked, what to change next time.
Getting content out
- Export the plan as a formatted, print-ready lesson-plan table.
- Paste a BOPPPS lesson-plan JSON in and click Apply to load it back into the form.
- Switch to the AI Prompt tab and click Load from Planner to carry everything across.
AI Prompt Generator
Fill in a structured form about your lesson and the generator produces two things: a detailed natural-language prompt you can paste into any AI assistant, and a JSON template that assistant can fill in and you can import straight back into the Slides editor.
The form
- Basic information — lesson topic, course, duration, target audience, prerequisite knowledge.
- BOPPPS sections — a rich-text field for each stage. Each stage has an include worksheet question checkbox that attaches a question prompt to that stage.
- Participatory learning — repeating activities with duration, instructor actions, student actions, and materials.
- Wrap-up — overall materials required, reflections on the lesson, and additional notes such as accommodations and special considerations.
Every long field is a full rich-text editor: bold, italic, underline, colour, highlight, alignment, bullet and numbered lists, links, tables, superscript and subscript, and code blocks.
Toolbar buttons
| Button | What it does |
|---|---|
| Export .json template | Downloads the JSON lesson template built from your form — the file you hand to an AI. |
| Save Form | Downloads the raw form data so you can come back to it later. |
| Load Form | Re-opens a previously saved form file. |
| Load from Planner | Pulls whatever is currently in the Planner tab into this form. |
| Reset | Clears the form back to empty. |
| Paste .json | Opens a textarea — paste JSON and click Import to populate the form. |
| Export Blank Template + Companion Pack | The strict AI workflow. See AI / LLM workflow. |
Slides editor & toolbar
The Slides tab is the main workspace. It has a collapsible lesson header at the top, a sticky toolbar under it, the slide canvas in the middle, the Sections outline drawer on the left, and the Insert tools panel on the right.
Lesson header
The header holds the course topic, instructor name and instructor email, plus the week and date for the session. Click the chevron button at the far left of the toolbar to collapse it and reclaim vertical space.
Toolbar reference (left to right)
| Control | What it does |
|---|---|
| Edit / Preview / Full | Mode switch. Edit shows handles and add-content buttons; Preview shows the slide as learners see it; Full goes full screen. Shortcuts E, P, F. |
| ◀ n / N ▶ | Previous and next slide, with a live slide counter. In accordion layout the counter shows how many sections are open. |
| Zoom − % + | Steps the canvas zoom. Click the percentage to reset to 100%. |
| Tools | Opens or closes the Insert panel (]). |
| Shapes | Opens the interactive shape and draw-over builder. |
| Sections | Opens or closes the outline drawer ([). |
| Name + v | Base file name and version number used for every export. Leave the version blank to let it follow the deck's automatic version. |
| Open | Opens a presentation JSON file from disk. |
| Save | Increments the version and downloads a full JSON export. This is the backup action. |
| + New | Starts a brand-new slide deck. |
| Export ▾ | Every export format. See Exporting. |
| ⚙ (gear) | The Settings menu — see below. |
The Settings (gear) menu
| Item | What it does |
|---|---|
| 🧩 Template Manager | Save, load and manage reusable lesson templates, and run the blank-template AI workflow. |
| 🖼 School Logo Settings | Upload an institution logo, set its display size, and choose whether it appears on title cards. |
| ⌃ Collapse / ⌄ Expand All Sections | Shown in accordion layout only — opens or closes every section at once. |
| 📥 Download Slide Template | Saves the current deck's styling (colours, backgrounds, title cards) as a reusable template file. |
| 📄 Apply Template to Slides | Applies a saved template's styling to the deck you're working on. |
| 📐 16:9 Export Guides | Draws dashed cut-off lines showing roughly where the PowerPoint export will split a slide, plus a "fits one slide" badge when no split is needed. |
| 🎨 Slide Designer (16:9) | Switches the deck into fixed 16:9 canvas mode. See Slide Designer. |
| 🏷 Deck Name on Content Slides | On by default. Turn it off to show the deck-name badge on title cards only, not at the bottom of every slide. |
| ⌃ Hide Toolbar | Collapses the toolbar to a thin "Show Toolbar" strip. |
| 🗖 Maximize Canvas | Collapses the toolbar and the outline drawer in one action. A floating "Restore layout" button brings both back. |
| Light / Dark Mode | Switches the editor theme. |
| ℹ About · ❓ FAQ | Open the About and FAQ pages in a new tab. The app version is shown at the bottom of the menu. |
Accordion layout vs slide layout
Set Body Layout in the Settings tab (Layout & Slides). Accordion renders the lesson as expandable sections on one long page — good for a course-page handout. Slides renders one slide at a time with navigation, which is what the PowerPoint and PDF exports are built around.
↑ Back to topSections & the outline drawer
A lesson is made of sections; each section holds one or more slides; each slide holds content blocks. The seven default sections are Bridge-In, Learning Outcomes, Pre-Assessment, Participatory Learning, Post-Assessment, Summary & Next Steps, and Resources & Materials.
The outline drawer
Press [ or click Sections. It lists every section with its slides as small 16:9 thumbnails, so you can see the shape of the deck at a glance.
- Filter items — type to narrow the list to matching sections and slide names.
- Issues only — filters to slides that are empty, with a count badge. Use it as a pre-flight check before exporting.
- Expand all / Collapse all — open or close every section's slide list.
- Click any section or slide thumbnail to jump the canvas straight to it.
Managing sections
- Rename a section, or give it a separate student-friendly title that appears alongside the formal name in exports.
- Delete a section you don't need — Bridge-In through Resources are defaults, not requirements.
- Add a section divider (a section title card) before a section so the deck announces each new stage. Divider settings control its label and styling.
- Give each section its own slide header bar colour, or use one colour for the whole deck (Settings → Layout & Slides → Slide Header Color).
Managing slides
- Add slide — splits a long section across several slides.
- Name a slide — click the slide name area to give it a label that shows in the outline drawer and on the slide.
- Slide duration — record how many minutes a slide should take; useful for pacing a class.
- Include in export — a per-slide toggle in Slide Settings. Turn it off to keep a slide in the file but out of exports.
- Clear all blocks empties a slide; Remove this slide deletes it.
- Slide-break dividers inside a section force a page break at a specific point.
Insert panel & block catalogue
Press ] or click Tools. The panel shows an Edit/View badge so you always know whether you can currently add content, and it groups every tool into four categories.
Basic blocks
| Tool | Adds |
|---|---|
| Text | A rich text block — the workhorse. Full formatting, lists, tables, links. |
| Heading | A standalone heading with its own size and alignment. |
| List | A bulleted or numbered list block. |
| APA Quote | A formatted block quote with an APA in-text citation attached. |
| Citation | One or more APA citations rendered as formatted entries. |
| Reference List | An auto-assembled APA reference list gathering every cited source in the deck. |
| Link | A styled link card pointing at an external resource. |
| Image | A single image with alt text, caption, size preset and optional figure citation. |
| Video | An embedded YouTube, Vimeo or Panopto video, or raw embed code. |
| Audio | An audio player with an optional credit line. |
| Cards | A grid of styled cards (2×1, 2×2, 3×1 or 1×3) in Info, Exercise, Warning or Success styling. |
| Stack | Stacked cards — coloured bands with optional side text, good for sequenced points. |
| Columns | Multi-column cards: the most configurable layout block. Columns, per-card colours, badges and checklists. |
| Timeline | A horizontal milestone timeline with numbered nodes and alternating callouts. |
| Divider | A horizontal rule; also used as a slide break. |
| Code | A code block that can display syntax-highlighted source or render live HTML and CSS. |
| Sheet | A worksheet block — questions, points and a printable student handout. |
Callouts
Three one-click coloured boxes for emphasis: Info (blue), Exercise (green) and Warning (amber). Each is a rich text block with an icon and a coloured left border.
Preset layouts
Presets drop several blocks onto a slide at once so you don't have to build a layout by hand: 1-Col, 2-Col, 3-Col, Img+Txt, Grid (card grid) and Hero. Choosing a column preset opens a short dialog so you can set the columns up before they're inserted.
The Settings tab offers a longer list of PowerPoint-style layouts: Single Column, Two Columns, Three Columns, Image + Text, Card Grid, Hero Section, Title Slide, Title + Content, Title / Text / Image, Comparison, Picture + Caption, and Title / Text / Video.
Draw-overs
Rect, Circle, Tri, Star, Hex and Draw all open the Shape Builder — a drawing canvas whose output is inserted as an image block. See Shapes & draw-overs.
Adding blocks without the panel
In Edit mode each slide also has inline Add content buttons: one at the top of the slide and one below every existing block, so you can insert exactly where you want rather than always appending.
↑ Back to topWorking with each block
Every block shares the same basics: drag its handle to reorder, use its toolbar to edit or delete it, and double-click on the 16:9 canvas to edit content.
Text, headings and lists
Text blocks use a full rich-text editor. Available formatting: bold, italic, underline, text colour, highlight, font family, text alignment, bullet and numbered lists, links, tables with header rows, superscript and subscript, block quotes, horizontal rules, and inline code.
You can switch a text block to HTML mode to paste or clean up markup directly — useful after pasting from Word or a web page, where hidden spans and inline styles often come along for the ride.
Cards
Choose a layout — 2×1, 2×2, 3×1 or 1×3 vertical — and a style: Info (slate), Exercise (emerald), Warning (amber) or Success (green). Each card has a title and a rich text body.
Stacked cards
A vertical stack of colour-filled bands. Each item has its own background colour and the text colour is chosen automatically for contrast. Turn side text on for a two-part layout (label beside body) or off for a single full-width band.
Multi-column cards
The most flexible layout block. It has two settings groups:
- Block Settings — an optional block title above the columns, equal-height matching across cards, and JSON import options.
- Columns & Cards — add or remove columns, and within each column add cards with a title, rich text content, background and border colours, an optional badge (theme or gradient), and an optional checklist with a selectable list style.
Cards can be dragged to reorder within and between columns. Copy card and Paste card below move a card's full styling to another position or another block — the clipboard persists across slides, and Clear clipboard empties it.
Timeline
A horizontal segmented bar with numbered nodes and callouts that alternate above and below the line. Each step has a colour, a time-span label shown inside the bar, a title, an optional icon, and body text. Steps can be moved earlier or later, added and deleted. Because the time span is just a label, the same block works for roadmaps, process steps and course weeks.
Three buttons make the timeline AI-friendly: Sample JSON downloads a documented example you can hand to an assistant so it knows the exact format, Import loads a timeline from a file, and Export saves this timeline out.
Accordions
Collapsible title and content pairs, up to ten items per block. Each item can start open or closed. Ideal for FAQs, worked answers, and progressive disclosure in the HTML export.
Boxes and callouts
Info, Exercise and Warning boxes are rich-text blocks with a coloured background, a coloured left border and an icon. They carry into the HTML, PDF and PowerPoint exports with their colours intact.
Links and dividers
A Link block renders a labelled, styled link to an external resource. A Divider draws a horizontal rule — and doubles as a manual slide break when the deck is in slide layout.
Embedded HTML
An embedded-HTML block renders custom markup inside your slide, for embeds the other blocks don't cover. All HTML is sanitised before it is rendered and before it is exported — inline scripts are stripped, so embeds must be self-contained markup and CSS.
↑ Back to topSlide Designer (16:9)
Turn this on from the Settings (gear) menu — 🎨 Slide Designer (16:9) — or start from the PowerPoint-Ready template, which enables it for you. Each slide becomes a fixed 16:9 canvas that cannot grow taller: the stage is the slide. What you lay out is what exports, one app slide to one PowerPoint slide, with no pagination and no size estimation.
Positioning objects
- Drag any block to move it; use the corner and edge handles to resize.
- Snap guides appear for slide centre and edges as you drag.
- Arrow keys nudge; Shift + arrows nudge further.
- Bring forward and Send backward control stacking order.
- Double-click a block to edit its content.
- Block positions are stored as percentages of the slide, so decks stay portable and backward compatible — blocks that have never been positioned get a sensible default layout.
Multi-select and grouping
- Shift/Ctrl/⌘ + click to add objects to the selection, or drag a marquee across empty canvas to sweep up everything it touches.
- Dragging any selected object moves the whole selection; arrow keys nudge them all; Delete removes them all.
- Ctrl/⌘ + G groups two or more objects (or use the Group button). Grouped objects show a dashed outline and a labelled bounding box, and selecting any member selects the whole group.
- Ctrl/⌘ + Shift + G ungroups.
Sizing text and media
- Selected text, citation and card blocks get A− and A+ buttons with a live percentage; click the percentage to reset to 100%. This is the same text-scale value the corner handles set, and it carries into the PowerPoint and PDF exports.
- Media blocks (video, image, gallery, embedded HTML) scale uniformly with their frame — shrink the frame and the media scales with it, matching the export's contain-fit behaviour. Text blocks keep their size and reflow.
- ⛶ Fit frame to content re-hugs a frame to its media's natural shape. Newly imported media auto-fits from the start.
Rulers and guides
The guides toggle and the slide-settings gear sit on the right of the "Edit Mode" banner, so they never cover a long slide title. The toggle is an icon button whose colour shows its state — grey when off, blue when on. Drag down from the top ruler for a horizontal guide, or right from the side ruler for a vertical one. Guides stay exactly where you place them across slides and reloads; Reset guides removes them all.
Dropping images onto a slide
Drag an image file anywhere onto a canvas slide and the image importer opens pre-loaded with that file, ready for alt text and a citation before it's saved as a new image block on that slide.
Detachable image citations
The 🔖 button on a selected image splits its citation into its own movable object, positioned in a full-width row beneath the image. A detached citation is still a real APA citation — it flows into the reference list and can be saved to the citation library — and it renders as a bare figure note with no background panel.
Slide Settings dialog
In designer mode the extra per-slide controls move into a Slide Settings dialog (the gear on the slide): title, subtitle, slide name, include-in-export, and add, remove or clear slide. The editor's header bar is sized to match the exported slide's header, and canvas text scales with the stage using the export's point sizes (14pt body, 22 and 26pt headings), so the layout you see lines up with what exports.
Full-screen editing controls
In full screen, both drawer arrows line up on the same row, the zoom stepper and Exit button combine into one compact top-right pill, and the slide back/forward navigation is centred on the top row so it clears the mode banner.
↑ Back to topTitle cards & branding
Opening and end title cards
A deck can open with a title card and close with an end card. Enable each one in the Settings tab (Title Card / End Title Card) and set the title, subtitle, background colour, whether course and instructor info appears, and whether the school logo appears.
Customize Title Card panel
Click a title card in the editor to open the Customize Title Card panel. It's a compact floating panel docked to the right with no dark backdrop, so the card stays fully visible while you edit — drag it by its header to move it out of the way. It also opens correctly while you're in full-screen preview.
- Colours — background and text colour use a swatch picker: a curated palette, your recently used colours (remembered across sessions), a custom colour wheel, and hex entry.
- Text Sizes — set the font size of the title, the subtitle, and the course/instructor text independently. The sizes carry into the HTML export.
- Course & Instructor Layout — keep course, name and email stacked, or flow them in one dot-separated row along the bottom.
- Image — add a title-card image and scale it with a 50–800px slider. The chosen size is honoured in the PowerPoint export, and the image keeps its real aspect ratio there.
- Background image — pick a preset or upload your own.
New title cards default to dark grey text on a light background so text stays visible when you drop a light background image behind it.
School logo
Settings menu → 🖼 School Logo Settings. Upload an institution logo, set its display size, and choose whether it appears on title cards. The logo is embedded in HTML and PowerPoint exports.
Deck name badge
Every slide carries a deck-name badge that scales with the slide, so it stays proportional whether the slide is small (edit mode with both panels open) or full screen. Turn off 🏷 Deck Name on Content Slides in the Settings menu to show it on title cards only. The preference persists per browser, saves with the deck, and is respected by the HTML export.
↑ Back to topDesign, backgrounds & CSS
Slide backgrounds
The background picker (Settings tab → Slide Background) opens with a live 16:9 preview of the pending background, complete with header bar and sample text, so you can judge it before applying.
Clean White, Light Gray, Warm White, Cool Blue.
Subtle, Blue, Warm, Purple and Green gradients.
Subtle Dots, Light Grid, Diagonal Lines, Soft Waves, Geometric.
A 16:9 thumbnail gallery of hosted background images with hover labels and a checkmark on the selected one — plus your own upload via a drop-zone button.
Backgrounds can be applied deck-wide or to the current slide only.
Slide header colours
Each slide carries a coloured header bar named for its BOPPPS section. Choose one colour for all slides or different colours per section in Settings → Layout & Slides, then pick each section's colour. These colours carry into the HTML, PDF and PowerPoint exports.
Global slide CSS
Settings tab → Global Slide CSS accepts custom CSS applied across the whole deck, for styling the exports beyond what the pickers offer. Linked styles are inlined at export time so exported files stay self-contained.
Dark backgrounds
Slides with a dark background automatically switch to light text in the PowerPoint export, so you don't have to recolour text by hand.
↑ Back to topAPA citations & references
Citation support runs through the whole app, not just one block. Anything you cite anywhere can flow into a single reference list, and the same formatting logic drives the HTML, PDF and PowerPoint exports.
Source types
The citation editor supports:
Fields adapt to the type: author first and last name or organisation, contributors and their roles, year or full date, title, source, publisher, site name, version, URL, DOI, volume, issue, pages, retrieval date, page number, licence, and notes. Two checkboxes handle sources that have no page and sources with no licence information.
Live preview
As you fill the fields, the editor shows three live previews: the full reference-list entry, the parenthetical in-text citation, and the narrative in-text citation.
The citation library
Save any citation to a browser-local library and reuse it anywhere in any deck. The library has a search box and a type filter (All types, Book, Journal, Webpage, Video, Image, Software, AI), and each saved entry shows its formatted reference with a clickable source link.
Reference lists
Add a Reference List block — usually in Resources & Materials — and it gathers the citations used across the deck, de-duplicates them, and sorts them into APA order. Figure notes, table notes, video citations and detached image citations all feed into it.
Citations attached to media
- Images and gallery items get an APA figure note beneath them; the note renders as bare text with no background panel. Its source URL exports as a clickable hyperlink.
- Tables get a table number and a table note.
- Videos get an in-text citation with the source URL underneath.
- Audio blocks get a credit line.
- Adapted sources have their own checkbox so the note reads correctly.
Importing and exporting citations
The citation block has three file buttons: Sample JSON downloads a documented example so an AI knows the exact import format, Import loads citations from a file, and Export saves this block's citations out.
APA block quotes
The APA Quote block renders a formatted block quote with its in-text citation, keeping long quotations properly set off from body text.
↑ Back to topWorksheets
A worksheet block turns part of a lesson into a student handout with questions, optional points, and a print view. Add one from the Insert panel's Sheet tool.
Worksheet settings
- Use points — toggle marks on or off for the whole worksheet.
- Worksheet title and total points.
- Description / instructions — what students should do.
Question types
| Type | Notes |
|---|---|
| Instructions | A titled block of guidance rather than a question. |
| Multiple Choice | Any number of options; mark one correct option, or allow several. |
| True / False | Select the correct answer. |
| Short Answer | A single-line response with an optional model answer. |
| Long Answer | A multi-line response area. |
| Fill in the Blank | A prompt with a blank and a recorded correct answer. |
Each question carries its own title or prompt and point value, and questions can be reordered and retyped after they're created.
Importing and printing
- Import Worksheet JSON — paste or load a worksheet file. An example file is linked from the worksheet Help dialog.
- Print worksheet — opens a clean, print-formatted student version with a name and date header. Print to PDF for distribution.
- Worksheets also carry into the HTML and PowerPoint exports.
Code blocks
Insert with the Code tool. A code block has two modes and a set of editor conveniences.
Modes
- Display code — shows the source with syntax highlighting, for teaching what code looks like.
- Render rich — renders HTML live inside a sandboxed preview, for showing what the code does.
Languages and options
Supported languages: HTML, CSS, JavaScript, JSON and plain text. Line numbers and soft wrap can each be toggled, and the editor becomes read-only in preview mode so you can't nudge code by accident while presenting.
A code block can carry a paired CSS panel, so an HTML sample and the stylesheet that formats it export together as a matched pair.
Citing code
Code blocks have their own citation modes so attribution is accurate about what you're crediting: the code itself, the underlying source it came from, or generative AI — with a field for the prompt used. All three flow into the reference list.
Shapes & draw-overs
The Shapes toolbar button (or any Draw-over tool in the Insert panel) opens the Shape Builder — a drawing canvas for annotating an image or building a simple diagram. What you draw is inserted into the slide as an image block.
Tools
Working in the builder
- Load a background image to annotate over, or start on a blank canvas.
- Adjust stroke colour, fill and thickness in the properties bar.
- Undo and Redo step through your drawing history; Delete removes the selected object; Clear empties the canvas.
- Insert when you're done — the drawing becomes a normal image block that can be moved, resized and cited like any other.
Typical uses: circling part of a diagram, drawing a process arrow over a screenshot, or sketching a quick concept map.
↑ Back to topImages, video & audio
Two ways to source images
Drag and drop or browse for images on your device. They're embedded in the lesson file, so the deck is self-contained — at the cost of a bigger file.
Point at images hosted elsewhere, such as an LMS content folder. Set a base path once — for example /content/enforced/123456-Course/images/ — then list filenames, one per line. The base path is reused for every path-based export.
Image options
- Alt text — always add it; it's what screen readers announce.
- Caption — shown under the image.
- Size preset — Small, Medium, Large or Full Width. These presets are honoured in the PowerPoint export.
- Citation — attach a figure note with author, source, date, licence and adaptation status.
- Remove current image clears the image without deleting the block.
Galleries
A gallery holds several images in a grid of 2, 3 or 4 columns. Each item can have its own alt text, caption and citation. The chosen column count carries into the PowerPoint export.
Video
Supported platforms: YouTube, Vimeo and Panopto, plus a raw
embed-code option for anything else. Paste a URL and the app extracts the video ID — YouTube watch, share
(youtu.be) and embed URL forms are all recognised.
Choose an aspect ratio: 16:9, 4:3, 1:1 or 21:9. Add an APA video citation and the source URL appears under the video in exports.
Audio
Audio blocks render a player with an optional credit line beneath, which flows into the reference list like any other citation.
↑ Back to topTemplates & Template Manager
Starter templates
The template picker (the New button) offers these starting points:
| Template | Category | Best for |
|---|---|---|
| Empty Deck | Basic | A completely empty deck — no sections, no slides. Total freedom. |
| Minimal Blank | Basic | All seven BOPPPS sections with minimal placeholder content. The usual starting point. |
| PowerPoint-Ready (16:9) | Presentation | Every section pre-broken with slide dividers, one idea per slide, each sized to fit a single exported 16:9 slide. The 16:9 guides are on by default. |
| PowerPoint Blank (16:9) | Presentation | The same 16:9 discipline with no starter content. |
| Modern Professional | Professional | Sleek corporate styling for professional development and business training. |
| Creative Education | Education | Vibrant and engaging — K-12, workshops, interactive sessions. |
You can also import a JSON file from the template picker to carry on with an existing lesson.
Template Manager
Settings menu → 🧩 Template Manager. It has three parts:
- Template Details — give the template a name and optional notes about how to use it.
- Template Actions — save the current deck as a template, or apply a saved one.
- Template Library — your saved templates, stored in this browser.
The Template Manager is also where the blank-template LLM workflow lives — see AI / LLM workflow.
Slide templates vs lesson templates
📥 Download Slide Template and 📄 Apply Template to Slides in the Settings menu move styling — header colours, backgrounds, title-card configuration — without touching your content. Use them to make a set of lessons look like one course.
↑ Back to topSettings tab (Template Controls)
The Settings workspace collects everything the toolbar menus expose, plus a few options that live only here. It has three tabs — Settings, Design and Export — and shows an "Unsaved changes" marker with the time of the last save.
Settings tab
- Session Details — week number, date, instructor name, instructor email, course title.
- Layout & Slides — body layout (accordion or slides), slide deck name, and slide header colour mode (one colour for all, or per section, with a colour for each).
- Mode & Branding — toggle editing mode and manage the school logo.
- Title Card — enable the opening card and set its title, subtitle, background colour, course info visibility and logo visibility.
- End Title Card — the same controls for the closing slide.
Design tab
- Slide Background — colours, gradients, patterns and images, with a live 16:9 preview.
- Global Slide CSS — custom CSS applied deck-wide.
- Content blocks and layouts — the same block palette and PowerPoint-style layout presets available from the Insert panel, applied to a chosen slide.
Export tab
- File Naming — base file name and version number for every export.
- JSON Exports — full and slim JSON.
- Presentation Exports — HTML, PDF and PowerPoint.
- Import — load previously saved content.
- Advanced — the LLM template export and other advanced options.
Exporting — every format
Open the Export ▾ menu in the Slides toolbar. Set the base file name and version in the toolbar first — every export uses them.
The full export menu
| Group | Option | What you get |
|---|---|---|
| JSON | 📄 Full JSON | The complete editable lesson with images embedded. This is your backup. Re-import it to carry on working. |
| 📄 Slim JSON | The same lesson without embedded images — much smaller, for sharing structure or version control. Path-based images still resolve. | |
| 🤖 LLM Template | A stable, schema-versioned JSON built for AI assistants. Shown when advanced exports are enabled. | |
| HTML | 🌐 Full HTML | A single self-contained web page with images embedded. Nothing external to upload. |
| 🌐 HTML (Server paths) | A web page that references images at their hosted paths — the right choice for an LMS where images already live on the server. | |
| 🌐 Slim HTML | A web page with no images at all. The smallest possible file. | |
| Slides | 📊 PowerPoint (.pptx) | A native PowerPoint deck. See PowerPoint export in depth. |
| One slide per page, ready to print or distribute. | ||
| Tools | ↔️ Import/Export Slides | Move specific sections, slides or blocks between decks rather than exporting everything. |
| 📋 Paste JSON | Paste lesson JSON directly into the app instead of loading a file. |
Save vs Export
Save in the toolbar is a shortcut: it bumps the version number and downloads a full JSON in one click. Use it as your habitual checkpoint while you work, and use the Export menu when you need a delivery format.
Partial export — Import/Export Slides
The transfer dialog has Export and Import tabs. In Export mode, tick the sections, slides and blocks you want and click Export selected at the bottom of the window. In Import mode, load a file and choose which of its pieces to bring in. This is how you build a shared bank of activities and reuse them across a course.
File naming and versions
The Name field plus the version number produce names like Week1_Module_v3.json. Leave the version
box empty and it follows the deck's automatic version; type a number to pin it.
PowerPoint export in depth
Export ▾ → 📊 PowerPoint (.pptx) converts the lesson slide by slide into a native PowerPoint file. Title cards become title slides; content slides get a coloured BOPPPS section header bar. The same option is available from the Control Panel and the Template Controls page.
What maps to native PowerPoint elements
- Rich text — headings, bold, italic, underline, links, nested lists.
- Tables, embedded images and galleries.
- Info, exercise and warning boxes.
- Code blocks, accordions, cards and multi-column cards (titles, images and content).
- Video links and worksheets.
- YouTube videos become native playable online-video frames, with the video's true 16:9 thumbnail as a poster frame so PowerPoint's edit view shows a preview rather than a grey box. Playback happens in Slide Show and needs internet. Vimeo, Panopto and raw embeds fall back to a hyperlink line.
Design fidelity
- Deck-wide and per-slide backgrounds: solid colours carry across directly; gradients and patterns are approximated by their base colour; background images are embedded, with a translucent white content panel behind text for readability.
- Custom per-section header bar colours, and title, section and end card background images.
- Image size presets (small, medium, large, full), gallery grids in the chosen 1–4 column layout, and video aspect ratios (16:9, 4:3, 1:1, 21:9).
- Card grids export as colour-tinted table layouts matching the app's 2×1, 2×2, 3×1 and 1×3 arrangements.
- Dark slide backgrounds automatically switch to light text.
How slides get split
- In Slide Designer mode, designer frames map 1:1 onto slide coordinates — one app slide is exactly one PowerPoint slide, with no pagination and no size estimation.
- Otherwise, a slide holding more than fits one 16:9 slide is split automatically: text splits at paragraph boundaries, tables split at row boundaries and repeat the header row, and follow-on slides repeat the section header with "(cont.)".
- Slide-break dividers still control boundaries manually; auto-pagination only kicks in on overflow.
- Consecutive text on a slide renders as one flowed text box, so estimate errors can't cause overlapping shapes.
- Turn on 📐 16:9 Export Guides while editing to see roughly where a split will land, plus a "fits one slide" badge when no split is needed.
Citations in PowerPoint
APA citations carry through: video in-text citations with the source URL under each video, figure and table notes under images and gallery items, and audio credits under audio blocks — using the same formatting logic as the HTML export. Image and gallery citations export as clickable hyperlinks.
Notes and limits
- The PowerPoint library loads on demand, so the app's normal load time is unaffected. The first export takes a moment longer.
- App-hosted background and preset images are embedded automatically. Remote images that can't be fetched are dropped gracefully rather than failing the export — a background image that can't be reached falls back to its base colour.
- Check the exported deck before class. Fonts and text metrics differ slightly between the browser and PowerPoint.
Importing & opening files
Four ways in
| Route | Use it when |
|---|---|
| Open (toolbar) | You have a presentation JSON file and want to load it as the current deck. |
| Template picker → Import | You're starting a session and want to pick up where you left off. |
| Export ▾ → 📋 Paste JSON | An AI gave you JSON in a chat window and you'd rather paste than save a file first. |
| Export ▾ → ↔️ Import/Export Slides | You only want some sections, slides or blocks from another lesson. |
What happens on import
Imported files are validated against the lesson schema, normalised, and repaired where possible — older files are migrated forward to the current format automatically. Sections, slides, blocks, week and date metadata, title cards and styling are all restored.
If an import is rejected
- Confirm the file is valid JSON — a truncated AI response is the most common cause.
- Check the file is a lesson export, not a worksheet, timeline or citation file. Those import into their own blocks, not into the whole deck.
- If an AI produced it, re-run the blank-template workflow: it constrains the model to filling fields rather than inventing structure.
After any import, press Save to write a fresh, known-good export of the merged result.
↑ Back to topAI / LLM workflow
The app is built to hand work to an AI assistant and take it back safely. Three exports support this, in increasing order of strictness.
1 · Prompt + JSON template
From the AI Prompt tab, fill in the form and use Export .json template. You get a prompt and a matching JSON structure. Good for exploratory drafting, where the assistant has room to be creative.
2 · LLM Template (stable JSON)
Export ▾ → 🤖 LLM Template produces a schema-versioned JSON that describes your lesson's meaning rather than its markup, along with generation guidance, the deck output schema, a JSON Schema validator, block type field specifications, self-check code and worked examples. Hand it to an assistant when you want it to understand every block type available.
3 · Blank Template + Companion Pack (strictest)
From the AI Prompt tab, Export Blank Template + Companion Pack downloads two files. Upload both to the assistant with this instruction:
Because the structure is fixed and IDs are preserved, the returned file imports cleanly. The completed JSON is validated before it's accepted, so a model that ignored the rules is caught rather than silently mangling your deck.
Block-level AI helpers
The Timeline and Citation blocks each offer a Sample JSON download — a documented example of that block's exact format. Hand one to an assistant and ask it to produce more of the same, then import the result into the block.
Verify before you teach
Presenting & printing
Presenting from the app
- Press F or click Full for full-screen presentation.
- Advance with → or Space; go back with ←; leave with Esc.
- The top-right pill holds the zoom stepper, a Fit slide to screen button, and Exit.
- Both side drawers stay usable in full screen, with their arrows lined up on the same row.
- Press E to drop into Edit mode without leaving full screen — handy for fixing a typo mid-class.
Presenting from an export
- HTML export — a self-contained page with in-page navigation, a slide list, collapsible sections and keyboard navigation. Works from a USB stick, an LMS, or any web host.
- PowerPoint export — for presenter view, speaker notes, and colleagues who need to edit in Office.
- PDF export — one slide per page; the most reliable format when you can't control the room's software.
Printing and handouts
- Export to PDF and print, or print the HTML export from the browser.
- Worksheet blocks have their own Print worksheet button that produces a clean student version with a name and date header — no slide chrome.
- For a text-only handout, switch Body Layout to accordion and export HTML.
Before you present — a short checklist
- Open the outline drawer and turn on Issues only. Fix or delete any empty slides.
- Check that every slide you want is set to include in export.
- Turn on 16:9 Export Guides and look for slides that will split unexpectedly.
- Run through in full screen once, checking that videos load and images appear.
- Export both a JSON backup and your delivery format, and put them somewhere that isn't this browser.
Data safety, autosave & undo
Where your work lives
Everything is stored in your browser's local storage on your own device. Nothing is transmitted to or stored on any server. That's good for privacy, and it means there is no cloud copy to fall back on.
- Your lessons never leave your device until you export them.
- Clearing browser data, using a different browser or device, or working in a private/incognito window will lose unsaved work.
- Browser storage is finite. Very large decks with many embedded images can hit the limit — Slim JSON and server-path images both help.
Autosave and recovery
The editor autosaves to local storage every couple of seconds, keyed to the lesson's week and date. If it finds a newer autosave when you return, it shows an "Auto-saved Content Found" prompt asking whether to recover the previous session. Autosave is a crash net, not a backup — it lives in the same browser storage that clearing your cache wipes.
Undo
Ctrl/⌘ + Z undoes the last structural change — adding, deleting, moving or editing blocks and slides. A brief ↩️ Undo indicator confirms it. Text you're typing uses your browser's normal undo inside the field.
The leave-page warning
The browser will ask you to confirm before you refresh or close the tab, as a reminder to export. Don't rely on it — some browsers suppress it.
A backup routine that works
- Set a file name and version once at the start of a session.
- Press Save after each significant chunk of work. Every press bumps the version, so you get
_v1,_v2,_v3rather than one file you keep overwriting. - Keep those JSON files in cloud storage or a course folder — not only in your Downloads folder.
- Export the delivery format (HTML, PDF or PPTX) only when you're ready to share; it's generated from the JSON and can always be regenerated.
Troubleshooting
Content and editing
Check for the autosave recovery prompt first. If browser data was cleared, restore from your latest JSON export — without a backup, data can't be recovered.
Word and web pages bring hidden spans and inline styles. Switch the text block to HTML mode and strip the extra markup for cleaner exports.
Check the Edit/View badge at the top of the Insert panel. You can only add blocks in Edit mode — press E.
Undo covers structural changes. Text inside a field uses the browser's own undo — click into the field first.
Media
If you used server paths, confirm the base path and filenames resolve from wherever the export is hosted. Path-based images will not appear in a slim export opened offline.
Confirm the URL is a supported platform and the video is public or reachable from your network. Institutional networks often block video embeds.
Remote images that can't be fetched are dropped and the background falls back to its base colour. Upload the image instead of linking to it.
Exports
The slide holds more than fits 16:9. Turn on 16:9 Export Guides, then split it yourself with a divider — or switch to Slide Designer mode for exact 1:1 control.
Embedded images are the cause. Use Slim JSON or Slim HTML, or switch to server-path images.
Validate the JSON. Truncated AI output is the usual culprit — re-run the blank template + companion pack workflow.
The export library loads on demand. Later exports in the same session are faster.
Layout and navigation
[ and ] toggle the drawers. Settings → Maximize Canvas collapses the toolbar and outline drawer together.
Open the outline drawer and use the filter box, or turn on Issues only to find empty slides.
Shortcuts are suppressed while a text field has focus. Click on empty canvas first.
You hid it. Click Show Toolbar on the thin strip, or Restore layout if the canvas is maximized.
Still stuck? Note the app version (bottom of the Settings menu), what you were doing, and which browser you're using — then share those details with whoever supports your installation.
↑ Back to topGlossary
| Term | Meaning |
|---|---|
| BOPPPS | The instructional design framework the app is built around: Bridge-in, Objectives (Learning Outcomes), Pre-assessment, Participatory learning, Post-assessment, Summary. |
| Deck | One complete lesson — its sections, slides, blocks, styling and metadata. |
| Section | A BOPPPS stage (or a custom stage). Holds one or more slides. |
| Slide | One page within a section. Holds content blocks. |
| Block | A single unit of content: text, image, video, card grid, worksheet, and so on. |
| Frame | A block's position and size on a 16:9 canvas, stored as percentages of the slide. |
| Slide break / divider | A block that forces a new slide at that point in a section. |
| Section divider | A title card announcing a new BOPPPS stage. |
| Full vs slim | Full exports embed images in the file; slim exports leave them out for a much smaller file. |
| Server paths | Images referenced by URL or path on a host you control, rather than embedded in the file. |
| Stable / LLM JSON | A schema-versioned export that describes the lesson's meaning rather than its markup — designed for AI assistants. |
| Companion pack | The outline file that accompanies a blank template export, telling an AI what content to write into which fields. |
| Figure note | The APA source note that appears under an image or gallery item. |
| Citation library | Your saved, reusable citations, stored in this browser. |
Finished reading? Head back, or jump straight into the app.