Engineering teams spend countless hours designing presentations, only to discard them the moment the talk concludes. Slides often live outside version control, escape review cycles, and vanish into the void of temporary files. Dinghy’s Slide Builder reimagines presentations as code—structured, reviewable artifacts that compile into a single, self-contained deliverable.
From disposable drafts to versioned presentations
Most slide tools treat decks as ephemeral documents. Keynote files pile up in Downloads folders, Google Slides links expire behind corporate logins, and architectural diagrams are painstakingly realigned for each talk—only to be discarded afterward. Slide Builder challenges this workflow by treating slides like any other engineering artifact: a directory of source files that builds into a polished presentation.
The tool layers atop RevealJS, the open-source framework already familiar to many developers. It integrates seamlessly with Dinghy’s existing CLI, allowing teams to manage slides alongside code, documentation, and configurations. This approach ensures that presentations benefit from version control, code review, and collaborative iteration—practices engineers already rely on for other projects.
YAML-driven structure for precise control
At its core, Slide Builder uses a YAML Domain-Specific Language (DSL) to define slide layouts. The structured format maps human-readable keys to semantic HTML elements, eliminating the guesswork of manual formatting. For example, a slide’s title and subtitle are declared with dedicated keys, while custom content uses standard HTML tags.
sections:
- badge: Show Case
title: Slide Builder
subtitle: author
ul:
li:
- YAML DSL maps keys to HTML elements
- Self-contained HTML output
- Live reload development serverUnrecognized keys automatically convert to their corresponding HTML elements. A key like p renders as a paragraph, while h3 produces a third-level heading. This hybrid approach lets users balance simplicity with flexibility—mixing predefined aliases for common elements with raw HTML when needed. Multi-slide presentations are simply multiple YAML files in the same folder, processed in alphabetical order.
Markdown, HTML, and mixed formats
Slide Builder doesn’t force a single authoring approach. Teams can mix formats to suit their workflow:
- Markdown slides for rapid section drafting
- HTML snippets for complex layouts
- YAML files for structured presentations
This flexibility means engineers can drop a .md file into the slide directory and watch it transform into a section without wrestling with formatting quirks. The tool intelligently detects file types and processes them accordingly, so users aren’t locked into one paradigm.
One file, zero dependencies
Running dinghy slide build generates a single HTML file containing all assets—images, fonts, and dependencies—inlined for portability. Unlike Keynote bundles or Google Slides links, this file requires no external hosting, VPN access, or internet connection. It can be:
- Attached to an email
- Uploaded to a static host
- Shared in a team chat
- Opened offline on any device
This feature is especially valuable for conference speakers who’ve faced the nightmare of WiFi failures mid-presentation. With Slide Builder, the presentation is a self-contained artifact that depends solely on a modern browser—no cloud connectivity required.
Prezi-style zooms for architectural storytelling
Dinghy introduces a unique zoom-and-pan feature that lets speakers guide audiences through complex diagrams step by step. Instead of jumping between slides, the presentation zooms into predefined regions of an image, creating a fluid, interactive walkthrough.
id: dinghy-proxy-project
img: imgs/dinghy-proxy-project.png
width: 1562
height: 1398
sections:
- id: dinghy-proxy-title
x1: 71
y1: 842
x2: 954
y2: 1132
- id: dinghy-proxy-ruby
title: ❤️
x1: 1052
y1: 119
x2: 1550
y2: 293This approach shines when explaining architectural diagrams, code flows, or system overviews. Speakers can highlight specific components without redrawing the entire slide, maintaining context while diving deep into details. Under the hood, Slide Builder leverages RevealJS’s data-auto-animate for smooth transitions, but the coordinate-based syntax is unique to Dinghy—sparing users from manual CSS calculations.
The engineering case for structured slides
The benefits of Slide Builder extend beyond convenience. By storing slides in repositories, teams gain:
- Version history to track changes over time
- Code reviews to ensure consistency and accuracy
- Reusability by referencing shared sections across multiple decks
A single update to a common component—like a company logo or contact slide—propagates automatically to every presentation that includes it. This modularity reduces redundancy and ensures brand consistency across all talks.
For engineers who deliver more than a handful of presentations annually, the time saved in authoring and maintenance quickly outweighs the initial learning curve. Slide Builder turns what was once a chore into a repeatable process, aligning slide creation with the rigor engineers apply to other aspects of their work.
Teams ready to modernize their presentation workflow can explore Slide Builder’s capabilities through its introduction deck, which showcases the YAML DSL, multi-format support, and zoom-and-pan features in action. The source is publicly available on GitHub, inviting contributions and adaptations for custom needs.
AI summary
Dinghy Slide Builder, RevealJS tabanlı YAML yapısında sunumlar hazırlamanızı sağlar. Prezi tarzı efektler ve tek dosyalı çıktıyla sunum deneyiminizi baştan aşağı değiştirin.