OpenSlides
A free, open-source, offline desktop app for creating animated code presentations with Magic Move transitions, syntax highlighting, and stepped highlights.
At a Glance
Fully free and open source under the MIT license. Download prebuilt installers or build from source.
Engagement
Available On
Alternatives
Listed Jul 2026
About OpenSlides
OpenSlides is a free, open-source desktop application built by CodeWithThiha that turns source code into polished presentation slides. It runs entirely offline using a Tauri 2 + Rust shell over a local SQLite database, requiring no account, subscription, or internet connection. The project is released under the MIT license and is positioned as a direct alternative to the commercial codeslides.app.
What It Is
OpenSlides is a code-presentation tool designed for developers, educators, content creators, and conference speakers who want to walk an audience through code visually. Rather than screensharing a static editor, users build slide decks where each slide contains code, and "highlight steps" let them dim unrelated lines and bring specific sections forward β advancing through the sequence with arrow keys. Magic Move transitions animate tokens between slide states so identifiers visually travel from one code version to the next instead of hard-cutting.
Tech Stack and Architecture
The app is built with a modern, deliberately chosen stack:
- Desktop shell: Tauri 2 and Rust
- Interface: Svelte 5 (runes), TypeScript, Vite 7, and Tailwind CSS 4
- Code rendering: Shiki (run in a shared web worker) and shiki-magic-move
- Local storage: SQLite via sqlx on the Rust side, running in WAL mode
- Motion and drag-and-drop: Svelte transitions/springs, svelte-dnd-action, and custom pointer drag-and-drop
The editor surface is an uncontrolled textarea rather than a heavy code-editor component, which keeps slide-switching instant. Caret positions are stored outside React/Svelte state, and all writes go through a shared save queue that serializes and debounces per slide.
Offline-First Design
Every piece of durable state β projects, slides, thumbnails, and the full-text search index β lives on disk as a local SQLite file. The syntax-highlighting worker, themes, and language grammars are bundled and loaded lazily from the local app rather than fetched at runtime. This means OpenSlides works on a plane, on a stage with unreliable venue Wi-Fi, or in any environment with no network access at all.
Highlight Steps and Presentation Features
A slide in OpenSlides is a sequence, not just a static code block. Key presentation capabilities include:
- Stepped highlights: Select code, create a highlight step, and dim everything outside the selection during presentation. Number keys
1β9jump to a step;0returns to the clean slide. - Magic Move transitions: Token-level animation between slide states, with highlight geometry computed in TypeScript using a monospace path with a DOM Range fallback.
- Autoplay: Advances by each slide's configured duration; highlight steps consume extra navigation steps before moving to the next slide.
- Full-screen presentation mode: Keyboard-isolated from the editor so presenting never accidentally triggers edit shortcuts.
- SQLite FTS5 search: Slides are indexed with full-text search, kept in sync by database triggers, with a JavaScript substring fallback when the backend is unavailable.
Update: v1.2.1 (July 2026)
The latest release, v1.2.1 (published 2026-07-25), is the most recent in a rapid release sequence that began in mid-July 2026. Notable milestones:
- v1.2.0 was the first major release built from a Svelte 5 rewrite of the earlier React app, delivering significantly more stable preview, highlight, and code-transition rendering.
- v1.2.1 switched build tooling from npm to Bun, added a macOS Universal binary covering both Apple Silicon and Intel, and fixed a dashboard visual glitch.
- Platform coverage now includes macOS (Apple Silicon, Intel, Universal), Windows (x64, ARM64), and Linux (
.deband.rpmpackages).
Open-Source Deployment Model
OpenSlides is available as prebuilt installers from GitHub Releases or can be built from source using Bun and a stable Rust toolchain with Cargo. The MIT license allows forking, modification, and redistribution without restriction. All project data is stored as a local SQLite file that users own outright β copyable, version-controllable, and fully portable.
Community Discussions
Be the first to start a conversation about OpenSlides
Share your experience with OpenSlides, ask questions, or help others learn from your insights.
Pricing
Open Source
Fully free and open source under the MIT license. Download prebuilt installers or build from source.
- Unlimited slide projects stored locally
- Magic Move code transitions
- Stepped code highlights
- 16 syntax themes
- Full-text search
Capabilities
Key Features
- Code slide presentations with syntax highlighting
- Magic Move token-level transitions between slides
- Stepped code highlights with dim/enlarge controls
- Offline-first β no account, no network required
- Local SQLite storage with WAL mode
- Shiki-powered syntax highlighting in a shared web worker
- 16 syntax themes with live preview
- Full-text search via SQLite FTS5
- Drag-and-drop slide reordering
- Autoplay with per-slide timing
- Full-screen presentation mode with keyboard controls
- Slide thumbnails and hover previews
- Command palette and keyboard navigation
- Export and import slide projects
- macOS, Windows, and Linux support
