Skip to main content

πŸ“½οΈ Decks

Presentation application for the TunaOS GNOME office suite.

Powered by Fabric.js for slide editing and Reveal.js for fullscreen presentations. Reads and writes PPTX and ODP files using python-pptx and odfpy. Exports to PDF via Pillow.

Shares the suite-common scaffold with Letters and Tables.

Features​

  • Canvas editing: Text boxes, shapes, images on a Fabric.js canvas
  • Slide management: Add, delete, duplicate, reorder slides via sidebar
  • Layouts: Blank, Title, Title+Content, Two-Column presets
  • Transitions: Fade, Slide, Convex, Concave, Zoom (per-slide)
  • Present mode: Fullscreen via Reveal.js with B/W/. blank shortcuts
  • Undo/Redo: 30-level canvas action history (Ctrl+Z / Ctrl+Shift+Z)
  • Export: Multi-page PDF
  • Keyboard shortcuts: PowerPoint-compatible (Ctrl+M, Ctrl+Shift+D, F5, Home, End)

Install​

flatpak remote-add --if-not-exists tuna-os https://tunaos.org/flatpak/tuna-os.flatpakrepo
flatpak install tuna-os org.tunaos.decks

Build​

git clone https://github.com/tuna-os/decks.git
cd decks
just setup # clones suite-common + vendors JS engines
just build # builds & installs Flatpak
just run # launches

Test​

just lint       # syntax check
just l1test # 11 adapter round-trip tests
just guitest # AT-SPI dogtail GUI test

License​

GPL-3.0-or-later. Vendored JS engines: MIT (fabric.js), MIT (reveal.js).