Introducing md2slides: Your Slides Are Just a Markdown File
If you write your docs, READMEs and notes in Markdown, why are your presentations still trapped in PowerPoint or Google Slides?
Every developer knows the routine. You copy code into a slide, the code changes on Tuesday, and by Friday the deck is out of date. You email final_v7.pptx to a client and nobody is sure which version they saw.
md2slides fixes this. It is a free, open-source tool that turns a plain Markdown file into a designed slide deck, synced with your GitHub repository. Edit the .md file, push, and the deck you show your client updates itself.
Try it now at md2slides.cybertechmind.com. If you liked Md2Docs for Word and PDF, md2slides brings the same Markdown-first idea to presentations.
Why Slide Tools Don't Work for Developers
Traditional slide tools were built for designers, not for people who ship code. Here is how md2slides answers each common pain point.
The old way | The md2slides way |
|---|---|
Copy-pasting code that is stale by Friday | Code blocks live in the deck file, with highlighted lines, click-to-step walkthroughs and imports straight from your repo using |
"Which version did we send the client?" | The deck is a file in Git: every change is a commit you can review, diff and roll back |
Waiting on a designer for every tweak | Pick a theme, drag blocks around, and it looks designed while the Markdown stays readable |
Emailing a 40 MB | Share a view-only link (nothing stored on a server) or export one offline HTML file |
How It Works (3 Simple Steps)
No exporting, no re-uploading, no final_v7.pptx. The Markdown in your repo is the presentation.
- Write (or let Claude write): Use plain Markdown plus readable blocks for cards, stats, timelines, code and Mermaid diagrams.
- Push to your repo: The md2slides dashboard syncs with GitHub, so your deck sits right next to the code it explains.
git add decks/q3.md
git commit -m "Q3 review: add results"
git push- Present or share: Open the full presenter with speaker notes, pen and timer, send a share link, or export one offline HTML file.
What Does an md2slides Deck Look Like?
It is just Markdown, plus a few readable extensions: :::cards, :::stats, :::timeline, Mermaid diagrams, <!-- layout: ... --> comments and front matter for themes. Here is a slide with a row of glass cards:
## Everything is a block
:::cards style=glass cols=3
- lightning | Live preview | Re-renders on every keystroke
- squares-four | Components | Drag blocks, the Markdown updates
- git-branch | GitHub sync | Commit and push your deck
:::And a code slide that steps through lines on each click:
```ts deck.ts {2|3}
const deck = await parse("q3.md");
const link = await share(deck);
present(deck);
```Anyone can read the source file, review it in a pull request, and still get a polished slide on screen. The full syntax is in the syntax reference.
Key Features
Plain Markdown in, designed slides out. Built for engineers who live in Git.
- GitHub is the database: Open your repos, edit decks and push real commits or pull requests. No lock-in.
- Live preview: A Rust + WebAssembly engine re-renders the slide on every keystroke and auto-splits pages when a slide overflows.
- Components view: See every slide as draggable cards. Moving them rewrites the Markdown, so the file stays the source of truth.
- Mermaid, charts and code: Flowcharts, sequence and Gantt diagrams, charts, and code that steps through line by line.
- A real presenter: Speaker notes, timer, pen, laser pointer, overview, click reveals and a synced speaker window.
- AI drafts: Describe a talk and get a first deck in md2slides Markdown, checked by the same parser.
- VS Code extension: Open any
.mdfile as slides beside your editor and insert slides and blocks from live previews.
Let Claude Write the Deck with the MCP Server
md2slides ships an MCP server you can run with npx. Claude reads the md2slides syntax, writes the .md file into your repo, fixes anything the engine flags, and hands you a preview link. It works with Claude Code, Claude Desktop, and Cursor or VS Code.
Add it to Claude Code with one command:
claude mcp add md2slides -- npx -y md2slides-mcpThen just ask:
Make a 6-slide client update in decks/acme-q3.md: results as stats, the new architecture as a Mermaid diagram, and next quarter's plan.
Claude creates the deck, the engine validates it, the file lands in decks/acme-q3.md, and it shows up in your md2slides dashboard, ready to present. The setup guide is in the MCP server folder on GitHub.
Share and Export Without a Server
The most unusual part of md2slides is the share link: the whole deck travels inside the URL. It is compressed into the part after #, which browsers never send to servers, so nothing is uploaded. You can add a password to encrypt it, set an expiry, or generate a QR code.
Option | Best for |
|---|---|
Share link | Quick view-only access, optionally password-protected |
HTML presentation | One offline file with the full presenter and speaker view |
One slide per page, for the client who needs an attachment | |
Markdown | The plain source file, readable anywhere |
VS Code | Presenting any |
Community Templates and Open Source
md2slides is free and built in the open. Two starter templates are already available, each 5 slides:
- API launch: Announce a developer API with what it does, a code sample, pricing and next steps.
- Incident review: A blameless postmortem with timeline, impact, root cause and follow-ups.
Every community template is credited to the developer who made it. To add yours, open a pull request with a deck.md and meta.json in community/templates, and your GitHub profile appears on the template. See the contributing guide.
Other ways to help:
- Report or fix a bug through GitHub Issues.
- Star the repo so other developers can find it.
- Support hosting and new templates via GitHub Sponsors, Buy Me a Coffee or Open Collective.
Frequently Asked Questions
Is md2slides free? Yes. It is fully open source. If it saves you time, you can support development through sponsorships.
Where are my decks stored? In your own GitHub repositories. md2slides reads and commits through the GitHub API. There is no md2slides database.
Do share links upload my deck? No. The deck is compressed into the link itself, after the #. Add a password to encrypt it.
Can AI generate decks? Yes, either inside the app or from Claude using the md2slides MCP server (npx -y md2slides-mcp), which writes validated .md files into your repo.
Does it work offline? Yes. The HTML export is a single offline file with the full presenter, and the VS Code extension renders locally too.
Useful Links and Next Steps
Stop fighting slide tools. Write Markdown, push to GitHub, and present like a designer.
- Open the app: md2slides.cybertechmind.com
- GitHub repository: github.com/moovendhan-v/md2-slides
- VS Code extension: vscode-extension on GitHub
- Also try Md2Docs: Convert Markdown to Word and PDF
- Developer profile: profile.cybertechmind.com
Post a Comment