| name | markdown-to-html |
| description | Convert Markdown text to beautifully styled, self-contained HTML with embedded CSS. Perfect for newsletters, documentation, reports, and email templates. |
Markdown to HTML Converter
A zero-dependency Python tool that converts Markdown files into beautiful, self-contained HTML documents with embedded CSS styling. No external libraries needed โ uses only Python's standard library.
Features
- Full Markdown support: Headings, bold, italic, strikethrough, links, images, code blocks with syntax hints, blockquotes, ordered and unordered lists, horizontal rules, and tables
- Two built-in themes: Light (GitHub-inspired) and Dark mode with carefully chosen colors
- Self-contained output: All CSS is embedded inline โ the resulting HTML file works anywhere with no external dependencies
- Responsive design: Output looks great on desktop and mobile screens
- Stdin support: Pipe content directly for use in shell pipelines
Usage Examples
Convert a file with the default light theme:
python main.py README.md -o readme.html
Use the dark theme for a presentation:
python main.py notes.md -o notes.html --theme dark --title "Meeting Notes"
Pipe from another command:
cat CHANGELOG.md | python main.py - -o changelog.html
Use in a newsletter pipeline:
python main.py issue-42.md --title "Lobster Diary #42" -o issue.html
Supported Markdown Elements
| Element | Syntax | Supported |
|---|
| Headings | # H1 through ###### H6 | โ
|
| Bold | **text** | โ
|
| Italic | *text* | โ
|
| Strikethrough | ~~text~~ | โ
|
| Links | [text](url) | โ
|
| Images |  | โ
|
| Code blocks | Triple backtick with language | โ
|
| Inline code | Single backtick | โ
|
| Blockquotes | > text | โ
|
| Unordered lists | - item or * item | โ
|
| Ordered lists | 1. item | โ
|
| Horizontal rules | --- | โ
|
Command Line Options
input โ Markdown file path, or - for stdin
-o, --output โ Output HTML file (defaults to stdout)
--theme โ light (default) or dark
--title โ HTML document title (default: "Document")