MCPcopy Index your code
hub / github.com/KovaMD/Kova

github.com/KovaMD/Kova @v0.6.12

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.6.12 ↗ · + Follow
549 symbols 1,196 edges 97 files 15 documented · 3% updated 1d agov0.6.13 · 2026-07-06★ 2478 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Kova

Kova turns plain Markdown into polished slides — with live preview, multiple layouts, theming, and PPTX export — all in a native desktop app.

Latest release Service status Matrix

Features

  • Markdown-first — write slides in plain text, separated by ---
  • Auto layout — title, section, split, two-column, grid, quote, full-bleed, and more
  • Live preview — editor and preview stay in sync as you type
  • Syntax highlighting — fenced code blocks rendered with highlight.js
  • Math & LaTeX — inline and block math via KaTeX ($...$ and $$...$$)
  • Mermaid diagrams — pie, bar, line charts and flowcharts inline
  • Themes — 11 built-in themes, community themes, and custom YAML
  • Focus mode — dims non-active slides, collapses side panels
  • Fullscreen presentation — speaker notes, slide counter, keyboard and click navigation
  • PPTX export — export to PowerPoint (16:9 and 4:3)
  • Academic references — cite sources with !ref[Author, Year. Title]; renders as small bottom-right text on the slide and exports to PPTX
  • YouTube & poll embeds!youtube[label](url) and !poll[label](url)
  • Local video!video[label](path.mp4) plays an inline file (relative to the document or absolute)
  • Insert media — drag-drop, paste, or right-click → Insert → Image or Video; files are copied into assets/ automatically
  • File watcher — reloads automatically when the file is edited externally
  • Keybindings — configurable via ~/.config/kova/keybindings.yaml

Download

Platform Download
macOS (Apple Silicon + Intel) Download .dmg
Windows 10/11 Download .msi · Setup .exe
Linux (Debian/Ubuntu) .deb package · or via package manager
Linux (Fedora/RHEL/openSUSE) .rpm package · or via package manager
Linux (AppImage) .AppImage

Linux package managers

AppImage note — Bundled graphics libs are stripped for compatibility with Arch/Fedora/etc., and the AppImage is signed so in-app auto-update works. See issue #3 for background.

Debian / Ubuntu

sudo curl -fsSL https://deb.kova.md/key.gpg \
  | sudo gpg --dearmor -o /etc/apt/keyrings/kova.gpg
echo "deb [signed-by=/etc/apt/keyrings/kova.gpg] https://deb.kova.md stable main" \
  | sudo tee /etc/apt/sources.list.d/kova.list
sudo apt update && sudo apt install kova

Debian 13+ — use the DEB822 source format.

Fedora / RHEL / openSUSE

sudo rpm --import https://rpm.kova.md/key.gpg
sudo curl -o /etc/yum.repos.d/kova.repo \
  https://rpm.kova.md/kova.repo
sudo dnf install kova   # openSUSE: zypper install kova

Nix (flakes)

nix run github:KovaMD/Kova          # run without installing
nix profile install github:KovaMD/Kova   # install into your profile

Or add github:KovaMD/Kova as a flake input and use packages.<system>.default.

Building from source

Prerequisites: Node.js 18+, Rust (stable), and Tauri prerequisites for your platform.

git clone https://github.com/KovaMD/Kova.git
cd Kova
npm install
npm run tauri dev      # development — hot-reload
npm run tauri build    # release binary

Nix users can skip the prerequisites: nix develop drops you in a shell with Rust, Node, and Tauri ready.

See the Contributing guide for more details, or TRANSLATING.md if you'd like to add a language.

Keybindings

To customise, edit your keybindings file (created automatically on first launch), or open it from Settings → Keyboard Shortcuts → Open file.

Platform Path
macOS ~/Library/Application Support/kova/keybindings.yaml
Linux ~/.config/kova/keybindings.yaml
Windows %APPDATA%\kova\keybindings.yaml

Custom themes follow the same base path, under a themes/ subfolder. Full reference on the Keyboard Shortcuts wiki page.

Themes

Theme library — open the Inspector, expand Theme, and click More Themes… to browse and install community themes from the KovaMD/Themes repository. Each download is verified against a SHA-256 checksum. Installed themes appear in the picker immediately.

Custom themes — place YAML theme files in the themes/ subfolder of your config directory (see Keybindings above for platform paths). They appear in the Inspector alongside built-in themes. See the Themes wiki page for the full YAML format.

License

Kova is free and open source software, released under the GNU General Public License v3.0.

You are free to use, study, modify, and distribute this software under the terms of the GPL v3. Any modified versions distributed to others must also be made available under the GPL v3.

See LICENSE for the full license text.

Extension points exported contracts — how you extend this code

MacMenuHandlers (Interface)
(no doc)
src/macMenu.ts
PresentInitPayload (Interface)
(no doc)
src/AudienceApp.tsx
RemoteTheme (Interface)
(no doc)
src/components/MissingThemeBanner.tsx
LocaleDef (Interface)
(no doc)
src/i18n/locales.ts
AppSettings (Interface)
(no doc)
src/store/settings.ts
Keybindings (Interface)
(no doc)
src/engine/keybindings.ts
Props (Interface)
(no doc)
src/components/MissingThemeBanner.tsx
PluralForms (Interface)
(no doc)
src/i18n/types.ts

Core symbols most depended-on inside this repo

parseDocument
called by 92
src/engine/parser/markdownToSlides.ts
hex
called by 55
src/engine/export/exportPptx.ts
detectLayout
called by 51
src/engine/layout/autoLayout.ts
firstFont
called by 30
src/engine/export/exportPptx.ts
normalizePath
called by 24
src/engine/resolvePath.ts
useT
called by 23
src/i18n/context.tsx
importMarp
called by 22
src/engine/import/marp.ts
formatCombo
called by 21
src/engine/keybindings.ts

Shape

Function 460
Interface 68
Class 11
Method 10

Languages

TypeScript90%
Rust10%

Modules by API surface

src/engine/export/exportPptx.ts48 symbols
src/components/preview/SlideRenderer.tsx45 symbols
src-tauri/src/commands.rs40 symbols
src/components/layout/EditorPanel.tsx35 symbols
src/engine/theme.ts25 symbols
src/engine/import/parsePptx.ts23 symbols
src/App.tsx22 symbols
src/engine/parser/markdownToSlides.ts15 symbols
src/components/layout/ThumbnailPanel.tsx15 symbols
src/engine/spellcheck/spellChecker.ts14 symbols
src/engine/export/exportPdfNative.ts13 symbols
src/engine/spellcheck/spellCheckExtension.ts11 symbols

For agents

$ claude mcp add Kova \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact