Shower is an HTML presentation engine built as a monorepo containing a core library, two CSS-only themes (Ribbon and Material), a CLI tool, and a starter template. The core engine, written in vanilla JavaScript, handles slide management, keyboard and touch navigation, inner slide steps, progress bar, timer, full-screen support, and accessibility. The CLI provides commands for creating, serving, bundling, archiving, and publishing presentations, as well as PDF export via a self-downloading Chrome engine. Themes use advanced CSS features like custom properties and the tan(atan2()) scaling trick, and are entirely decoupled from the engine. The repository is well-tested with Playwright and GitHub Actions CI, uses modern Node.js (ESM, workspaces), and demonstrates clean architecture with lazy-loaded CLI commands and a plugin-based core.