Zero-Config Slide Generator - Write Markdown, get beautiful slides automatically.
Slide Bun is a fast, zero-configuration presentation tool powered by Bun. It transforms your Markdown files into polished, responsive HTML slides with automatic layout adjustments.
- Markdown First: Write your content in standard Markdown.
- Auto Layout: Automatically adjusts font sizes based on content density.
- Fast Build: Powered by Bun for incredible speed.
- Flexible Styling: Support for CSS classes, columns, and custom attributes.
- Live Preview: Built-in development server with live reload.
- Zero Config: Sensible defaults, just write and run.
bun add -d slide_bunOr run directly:
bunx slide_bun <your-file.md>Although this tool is built for Bun, you can install it via npm if you have the Bun runtime available in your path.
npm install -g slide_bun
# or run directly
npx slide_bun <your-file.md>Note: Requires Bun runtime installed on your system.
This project provides a standard Nix flake.
# Run directly
nix run github:halqme/slide_bun -- <your-file.md>
# Enter development shell
nix develop github:halqme/slide_bunGenerate a static HTML file from your Markdown source.
slide-bun presentation.mdOptions:
-o, --output <path>: Specify output file path (default:dist/index.html)-w, --watch: Watch for changes and rebuild--open: Open the generated file in browser-v, --version: Show version number-h, --help: Show help message
Start a local server to preview your slides.
slide-bun serve presentation.mdOptions:
-p, --port <number>: Set server port (default: 3000)
Slide Bun extends standard Markdown with powerful layout features.
Configure your slide deck using YAML frontmatter at the top of your file.
title: My Awesome Presentation
author: Me
theme: default
aspectRatio: 16/9
fontSize: MSeparate slides with ---.
# Slide 1
Content...
---
# Slide 2
Content...Create multi-column layouts using ::: columns blocks.
::: columns
:::: col
### Left Column
- Item 1
- Item 2
::::
:::: col
### Right Column

::::
:::Apply CSS classes to elements using {.classname} syntax.
# Centered Title {.center}
This text is highlighted. [Important]{.mark}
{.cover}Add private notes that won't appear on the main slide.
::: speaker
Don't forget to mention the new features!
:::-
Clone the repository:
git clone https://github.com/halqme/slide_bun.git cd slide_bun -
Install dependencies:
bun install
-
Run tests:
bun run test -
Build the project:
bun run build
MIT
Built with ❤️ using Bun.