Showmaker
Markdown to Slide
Install / Use
/learn @jhk0530/ShowmakerREADME
showmaker
showmaker is an open‑source, cross‑platform desktop app that turns Markdown —often authored with generative AI—into Quarto‑based, interactive HTML slides. Built with Rust and Tauri, it offers a simple, user‑friendly interface with no command‑line setup. With a straightforward installer, built‑in theme support, and smooth integration with existing Markdown workflows, showmaker streamlines the path from draft to polished web slides.
Prerequisite
<img width="500" alt="quarto" src="https://github.com/user-attachments/assets/6b64ebe4-bdd1-4d8f-8082-4affa5aac87d" />[!IMPORTANT]
You must install Quarto to runshowmakerIf
showmakershow red check instead green check, please install and restart PC again
Installation
- Download the installer for your operating system:
[!IMPORTANT]
Linux is not currently supported.
- Run the installer and follow the prompts.
- Launch
showmakerfrom your applications menu.
Quick Start
Follow these five simple steps to create your first presentation with showmaker:
- Prepare a markdown file – Create or obtain a sample
.mdfile. Utilizing AI to generate a markdown file is recommended, see AI generated slide-markdown file below. You can userevealjsfor HTML,pptxfor Powerpoint,beamerfor PDF.
[!IMPORTANT]
The result markdown file must contain header as shown in the example below.For more information, see Quarto Presentation
---
title: "This is title"
author: "Author"
format: revealjs
embed-resources: true
---
- Upload markdown to
showmaker– Use theUploadbutton
- Render and Download slide with
showmaker– Use theRenderbutton
- Use your presentation – Open the generated Quarto-based slides.
Features
- Seamless Workflow – Works with any existing Markdown content, including files generated by large language models.
- Easy Markdown to Quarto Slides – Instantly convert Markdown files into Quarto-based presentations.
- Cross-Platform – Runs on Windows, macOS, as a standalone desktop app.
- User-Friendly Interface – Simple GUI for non-technical users.
- Built with Rust + Tauri – Fast, lightweight, and secure by design.
- Offline Operation – No internet connection required, ensuring complete data privacy and security.
AI generated slide-markdown file
You can use this prompt to have an AI generate a markdown file.
Make a simple slide to introduce Tauri in markdown format.
1. The Markdown file must include a YAML header containing author, title, format, and embed-resources, as shown in the example below.
---
title: "This is title"
author: "Author"
format: revealjs
embed-resources: true
---
2. Each slide consists of a title and content, separated by # and -. For example:
# page1
- item 1
- item 2
# page2
- item 3
- item 4
and this will generate markdown like this:
---
title: "Introduction to Tauri"
author: "Your Name"
format: revealjs
embed-resources: true
---
# What is Tauri?
- A framework for building desktop applications
- Uses web technologies (HTML, CSS, JavaScript)
- Runs on a lightweight Rust backend
# Key Features
- Small bundle size
- Secure by default
- Cross-platform support (Windows, macOS, Linux)
# Why Use Tauri?
- Better performance than Electron
- Lower memory usage
- Flexible frontend framework choice (React, Vue, Svelte, etc.)
# Architecture Overview
- Frontend: Any modern web framework
- Backend: Rust-powered core
- Communication via secure API bridge
# Development Workflow
- Write frontend like a web app
- Integrate with Rust commands
- Build native executables
# Example Use Cases
- Productivity tools
- Note-taking apps
- Markdown editors
# Getting Started
- Install Rust
- Create Tauri project (`npm create tauri-app`)
- Develop, build, and ship your app
# Resources
- Official site: https://tauri.app
- GitHub repository: https://github.com/tauri-apps/tauri
- Community Discord & discussions
Contributing
Contributions are welcome! Whether it’s reporting a bug, suggesting a new feature, improving documentation, or submitting code, your help is greatly appreciated.
How to contribute:
- Open an issue – Before starting any work, please open an issue to discuss your idea or report a bug. This helps prevent duplicated work and ensures your contribution aligns with the project’s goals.
- Fork the repository and create your branch from main.
- Make your changes – follow the project’s coding style and include relevant tests if applicable.
- Commit your changes with a clear, descriptive message.
- Push to your branch and open a Pull Request.
Before submitting a PR:
- Make sure your changes build and run correctly on your platform.
- Update the documentation if your changes affect usage or features.
- Check that your code passes all existing tests.
If you find a bug or have a feature request, please open an issue and include as much detail as possible.
Running Tests
showmaker includes a comprehensive test suite to ensure that Markdown parsing, Quarto rendering, and error handling work as expected.
To run all tests, execute:
cargo test
This will compile the project in test mode and run:
- Unit tests for YAML front matter validation
- Rendering tests (mocked) to verify HTML slide generation
- Error-handling tests for invalid input, unsupported formats, and missing dependencies
All tests are automated and can be run on any supported platform without requiring an internet connection.
