Beautiful code presentations for content creators, educators, and developers.
OpenSlides is a free, open-source, offline desktop app for turning code into polished slides with smooth, step-by-step transitions. It is a direct alternative to codeslides.app: create expressive code decks, keep your work on your own machine, and present without a subscription or internet connection.
Turn source code into presentation-ready slides. Move between code states with smooth Magic Move transitions, and build a visual story around your code instead of showing a static editor.
Reveal an idea line by line with stepped highlights. Control emphasis per step: dim amount, size-up scale, and custom transition timings — so you can guide viewers through a function, refactor, algorithm, or feature at a natural pace.
Choose light or dark presentation themes to match your style and recording setup.
Whether you are recording a tutorial, teaching a class, streaming a live build, giving a conference talk, or sharing a technical demo, OpenSlides helps you focus attention on the exact part of the code that matters.
- Keep projects private, local, and ready to present anywhere.
- Search across slides, use thumbnails and hover previews, and navigate by keyboard.
- Present in full screen with optional autoplay and per-slide timing.
- Create, organize, rename, duplicate, import, and export slide projects.
- Arrange slides in stacks and reorder them with drag and drop.
Create a project, add your code to slides, then select the lines you want to explain. OpenSlides turns those selections into presentation steps, so you can guide viewers through a function, refactor, algorithm, or feature at a natural pace. When it is time to present, move through slides and highlight steps with the keyboard, use full-screen mode, or let the deck advance automatically.
Everything stays on your computer. That makes OpenSlides useful for private client work, offline classrooms, live events, and any workflow where you want your code and slides under your control.
Prebuilt installers for macOS, Windows, and Linux are available from the OpenSlides Releases page.
- macOS: Apple Silicon, Intel, and Universal builds
- Windows: x64 and ARM64 builds
- Linux:
.deband.rpmpackages
OpenSlides release builds include Linux packages in .deb and .rpm formats.
- Debian / Ubuntu / Linux Mint / Pop!_OS
Install the required runtime libraries first, then install the package:
sudo apt update
sudo apt install -y libwebkit2gtk-4.1-0 libgtk-3-0 libscrypt0 libayatana-appindicator3-1 librsvg2-common
sudo apt install ./OpenSlides_<version>_amd64.deb- Fedora / RHEL / Rocky / AlmaLinux / other DNF-based distributions
Install the required runtime libraries first, then install the package:
sudo dnf check-update
sudo dnf install -y webkit2gtk4.1 gtk3 libappindicator-gtk3 librsvg2
sudo dnf install -y ./OpenSlides-<version>-1.x86_64.rpmIf your distribution prefers a different workflow, read the package manager guidance in your distro docs first. AppImage is intentionally not documented yet.
- Desktop app: Tauri 2 and Rust
- Interface: Svelte 5 (runes), TypeScript, Vite 7, and Tailwind CSS 4
- Component toolkit: bits-ui, paneforge, and @lucide/svelte
- Data and flow: @tanstack/svelte-query, svelte-spa-router, and persistent rune stores
- Motion and DnD: Svelte transitions/springs, svelte-dnd-action, and custom pointer drag-and-drop
- Code rendering: Shiki and shiki-magic-move
- Local storage: SQLite (via sqlx, Rust side)
- Bun or newer
- Rust stable toolchain and Cargo
- Platform requirements for Tauri 2
bun install
bun run tauri devTo run the interface in a browser:
bun run devThe same gates CI enforces on every push and pull request:
bun run check # svelte-check: 0 errors, 0 warnings
bun run lint # eslint
bun run format:check # prettier (svelte + tailwind plugins)
bun run test:highlight # highlight token pipeline (11 tests)
bun run test:save-race # editor save/debounce races (14 tests)
bun run test:app-flow # real app flows in jsdom: dashboard -> editor -> present (9 tests)
bun run test:stack-targeting # slide stack drop-zone geometry (4 tests)
bun run build # production bundleMIT — see LICENSE.


