Auto-Advance Timer
Set your PDF to move forward automatically. Any duration — seconds, minutes, or milliseconds via --auto.
Boozle turns any PDF into a fullscreen, timed presentation. Use it for trade show booths, kiosks, lobby screens, Ignite talks, classrooms, and hands-free slide playback. No presentation suite. No browser workaround. No runtime to install.
Open source · Apache-2.0 · Built in Go · macOS · Linux · Windows
Sometimes you already have the slides exported as a PDF. You just need them to open fullscreen, advance on a timer, loop cleanly, and look sharp on the screen you choose.
Manual clicking gets old. Auto-advance your PDF every few seconds, minutes, or milliseconds — with a configurable interval per slide.
Generic PDF viewers are not presentation tools. Loop mode, progress overlays, page ranges, monitor selection, and slide overview are built for presenting — not reading.
Big presentation suites are overkill. Boozle is focused on one job — reliable fullscreen PDF playback. Download, run, present.
Everything a kiosk needs. Nothing it doesn't.
Set your PDF to move forward automatically. Any duration — seconds, minutes, or milliseconds via --auto.
Perfect for booths, signage, kiosks, and lobby screens. Add --loop and the deck runs forever without a hiccup.
Override timing per slide using a TOML sidecar file that lives next to the PDF. Important slides get more time; quick slides get less.
On-screen HUD shows the current page and auto-advance countdown in real time. Enable it with --progress.
Press Tab to reveal a thumbnail grid of all slides. Jump to any page instantly without breaking the loop.
Re-rasterises pages at native pixel density on Retina and 4K displays. Your PDFs look exactly as designed.
Native binaries for macOS (Intel & Apple Silicon), Linux x86_64, and Windows. One tool for every screen.
Choose which connected display to present on via --monitor. Set it and forget it — perfect for dedicated booth screens.
Download, run, present. No installer, no runtime, no package manager. Copy the binary and it just works.
Choose your platform. One command and you're ready.
# Add the tap, then install
brew tap gethash/tap
brew install boozle
Homebrew keeps boozle up to date with brew upgrade.
curl -fsSL https://github.com/gethash/boozle/releases/latest/download/install.sh | sh
Downloads the latest release for your OS and architecture, places the binary in ~/.local/bin.
iwr -useb https://github.com/gethash/boozle/releases/latest/download/install.ps1 | iex
If Windows SmartScreen warns on first run, you can proceed by clicking "More info → Run anyway" if you trust the release source.
boozle-darwin-arm64boozle-darwin-amd64boozle-linux-amd64boozle-windows-amd64.exechmod +x boozle-darwin-arm64
mv boozle-darwin-arm64 /usr/local/bin/boozle
On macOS, if Gatekeeper blocks the first launch, right-click the binary → Open, then confirm. Subsequent launches work normally.
boozle --versionWherever a PDF needs to run itself, Boozle fits.
Run your booth presentation all day from a PDF. Export the deck, start Boozle in fullscreen, and let it loop for the entire event.
boozle booth.pdf --auto 15s --loop --progress
Turn any display into a PDF signage screen — welcome messages, event schedules, announcements, or donor lists.
boozle lobby.pdf --auto 30s --loop
Museums, galleries, product displays, and information desks — a focused PDF viewer for kiosk-style playback on any screen.
boozle kiosk.pdf --auto 20s --loop --pages 1-12
Teach or demo hands-free. Use auto-advance for pacing, pause when discussion starts, and pick up on the second monitor.
boozle lesson.pdf --auto 45s --monitor 1 --progress
20 slides, 15 seconds each, fully automated. Export your Ignite deck as a PDF and let Boozle handle the timing — no clicker needed.
boozle ignite.pdf --auto 15s --autoquit
A single command is all it takes.
# Basic: advance every 30 seconds
boozle slides.pdf --auto 30s
# Loop forever with progress overlay
boozle slides.pdf --auto 30s --loop --progress
# Use second monitor, quit after last slide
boozle slides.pdf --auto 1m --monitor 1 --autoquit
# Present only pages 3 to 9
boozle slides.pdf --auto 20s --pages 3-9
auto = "30s"
loop = true
progress = true
# Hold slide 3 for 2 minutes
[[page]]
n = 3
auto = "2m"
# Quick slide — 10 seconds
[[page]]
n = 7
auto = "10s"
Boozle is not a slide editor. It's what you use after your slides are already a PDF.
| Need | Boozle | PowerPoint / Keynote | Generic PDF Viewer |
|---|---|---|---|
| Auto-advance a PDF | ✓ Built-in | Requires import / export | Rarely supported |
| Loop fullscreen | ✓ --loop flag |
Possible but heavy | Often awkward |
| Per-slide timing | ✓ TOML sidecar | Native slide files only | Rare |
| Single command launch | ✓ One binary | No | Sometimes |
| Monitor selection | ✓ --monitor |
Presenter mode only | No |
| Designed for kiosk loops | ✓ Primary use case | Partly | No |
| Zero dependencies | ✓ Static binary | Full install required | Often requires runtime |
--auto with any duration (e.g. --auto 30s or --auto 2m) and Boozle will advance slides automatically at that interval.
--loop and Boozle restarts from slide 1 after the last page. It runs indefinitely — ideal for kiosk displays and booth screens.
.toml sidecar file next to your PDF with [[page]] entries specifying an n (page number) and auto override. The global default applies to all other pages.
--monitor 1 (or any display index) to open the presentation on a specific connected display. Display 0 is the primary screen.
--auto 15s on a 20-slide PDF and it advances automatically every 15 seconds, running the full 5 minutes hands-free. Add --autoquit so it exits cleanly when the last slide is done.