home / skills / yousufjoyian / claude-skills / markdown-to-epub

This skill converts markdown into EPUB3 ebooks with auto TOC, chapters, and formatted output for Kindle and other readers.

This is most likely a fork of the markdown-to-epub skill from smerchek
npx playbooks add skill yousufjoyian/claude-skills --skill markdown-to-epub

Review the files below or copy the command above to add this skill to your agents.

Files (5)
SKILL.md
6.6 KB
---
name: markdown-to-epub-converter
description: Convert markdown documents and chat summaries into formatted EPUB ebook files that can be read on any device or uploaded to Kindle.
---

# Markdown to EPUB Converter Skill

This skill transforms markdown documents into professional EPUB ebook files. Perfect for converting research documents, blog posts, articles, or chat conversation summaries into portable, device-agnostic ebook formats.

## Overview

The skill accepts markdown content in multiple formats and generates a properly formatted EPUB3 file that works across all major ebook readers including:
- Apple Books
- Amazon Kindle (via Kindle for Mac/Windows/iOS/Android)
- Google Play Books
- Kobo and other EPUB readers
- Any standard EPUB reader

## Input Formats

### Option 1: Raw Markdown Text
Provide markdown content directly in your message:

```
Convert this markdown to EPUB:
# My Book Title
## Chapter 1
This is chapter one content...
```

### Option 2: File Path
Provide a path to a markdown file to be converted.

## How It Works

1. **Markdown Parsing**: Analyzes your markdown and automatically:
   - Treats H1 headers (`#`) as chapter boundaries
   - Treats H2 headers (`##`) as section headings within chapters
   - Preserves formatting (bold, italic, links, lists, code blocks)

2. **Structure Generation**: Creates proper EPUB structure:
   - Automatic table of contents from chapters
   - Navigation document (EPUB3 standard)
   - Metadata (title, language, etc.)

3. **File Creation**: Generates a valid EPUB3 file ready for download and use

## Usage Examples

### Example 1: Convert a Blog Post
"Convert this markdown blog post to EPUB:
# How to Build a Simple Web Server
## Introduction
...content..."

### Example 2: Convert a Research Summary
"I have research notes in markdown format. Convert them to an EPUB ebook. The content is:
# Research Project: Machine Learning Basics
## Chapter 1: Fundamentals
..."

### Example 3: Convert a Chat Summary
"Summarize our conversation so far as markdown and convert it to an EPUB for reference"

## Output

The skill generates a downloadable EPUB file that includes:
- Professional formatting
- Automatic table of contents
- Proper chapter structure
- Support for markdown formatting elements:
  - Headers (all levels)
  - Bold and italic text
  - Hyperlinks
  - Lists (ordered and unordered)
  - Code blocks and inline code
  - Blockquotes
  - Horizontal rules

## Markdown Elements Supported

| Element | Markdown | Support | Notes |
|---------|----------|---------|-------|
| Headers | `# H1` through `###### H6` | Full | Auto TOC generation |
| Bold | `**text**` or `__text__` | Full | |
| Italic | `*text*` or `_text_` | Full | |
| Links | `[text](url)` | Full | Clickable in ebooks |
| Lists | `- item` or `1. item` | Full | Nested lists supported |
| Code blocks | ` ```language ` | **Enhanced** | Syntax highlighting ready, monospace fonts |
| Inline code | ` `code` ` | **Enhanced** | Styled background, borders |
| Tables | Markdown tables | **Enhanced** | Styled headers, alternating rows |
| Blockquotes | `> quote` | Full | Styled with left border |
| Horizontal rule | `---` or `***` | Full | |

## Advanced Features

### Enhanced Code Block Support

Code blocks are beautifully formatted with:
- **Premium monospace fonts**: SF Mono, Monaco, Fira Code, Consolas, and more
- **Styled backgrounds**: Subtle gray background with blue accent border
- **Language detection**: Specify language after ` ``` ` for future syntax highlighting
- **Proper escaping**: HTML characters are safely escaped
- **Overflow handling**: Horizontal scrolling for long lines

Example:
```python
def fibonacci(n):
    if n <= 1:
        return n
    return fibonacci(n-1) + fibonacci(n-2)
```

### Enhanced Table Support

Tables are rendered with professional styling:
- **Styled headers**: Blue background with white text
- **Alternating rows**: Zebra striping for readability
- **Cell padding**: Comfortable spacing for easy reading
- **Inline formatting**: Code, bold, italic, and links work in cells
- **Responsive**: Tables adapt to different screen sizes

Example:
| Feature | Status | Notes |
|---------|--------|-------|
| Headers | ✓ | Full support |
| Code | ✓ | Enhanced styling |
| Tables | ✓ | Professional layout |

### Custom Title and Metadata
You can specify EPUB metadata:
- Book title (defaults to first H1 header)
- Author name
- Language
- Publication date

### Chapter Organization
Chapters are automatically detected from:
- H1 headers (`#`) as primary chapter breaks
- Logical content sections between H1s
- Automatic page breaks between chapters

### Styling
The generated EPUB uses clean, readable default styling that:
- Respects the reader's font preferences
- Works on all screen sizes
- Maintains proper spacing and hierarchy
- Includes appropriate margins and padding

## Technical Details

- **Format**: EPUB3 (compatible with all modern readers)
- **Encoding**: UTF-8
- **HTML Version**: XHTML 1.1
- **CSS Support**: Responsive styling

## Downloading Your EPUB

After generation, the file will be available for download. You can then:
1. Download the EPUB to your computer
2. Open it with your preferred ebook reader
3. Transfer to your Kindle, iPad, or other device
4. Upload directly to Kindle via email or cloud

## Tips for Best Results

1. **Use Proper Markdown Structure**: The skill works best when markdown follows standard conventions (H1 for titles, H2 for sections)

2. **Clear Chapter Breaks**: Use H1 headers to clearly mark chapter divisions

3. **Descriptive Headers**: Headers become the table of contents, so make them clear and descriptive

4. **Content Organization**: Place content logically between headers

5. **Supported Formatting**: Stick to basic markdown formatting for best compatibility across all readers

## Troubleshooting

**EPUB doesn't open**: Ensure your markdown is properly formatted. Check for matching brackets in links and proper syntax.

**Table of contents is empty**: Make sure your markdown includes H1 headers to define chapters.

**Formatting looks different**: EPUB readers apply their own fonts and styling. This is normal and expected behavior.

## Scripts

- `epub_generator.py` - Core EPUB file creation and formatting
- `markdown_processor.py` - Markdown parsing and structure extraction

## Future Enhancements

- Auto-generated cover pages with custom images
- Kindle-specific optimizations (.mobi format)
- Custom CSS styling per user preferences
- Multi-document merging
- Image embedding and optimization
- Advanced metadata support

Overview

This skill converts markdown documents and chat summaries into polished EPUB3 ebooks ready for reading or distribution. It produces device-agnostic files compatible with Apple Books, Kindle (via import), Google Play Books, Kobo, and other EPUB readers. The output includes a generated table of contents, metadata, and responsive styling for reliable reading across devices.

How this skill works

The converter parses supplied markdown, treating H1 headers as chapter boundaries and H2 headers as section headings while preserving bold, italic, lists, links, code blocks, blockquotes, tables, and horizontal rules. It builds a valid EPUB3 structure with navigation documents, a table of contents, and configurable metadata (title, author, language, date). The tool renders enhanced code blocks and tables with readable styling, then packages everything into a downloadable EPUB file encoded in UTF-8 and XHTML-compatible markup.

When to use it

  • You want to turn long-form markdown content into a portable ebook for offline reading.
  • You need a clean EPUB export of research notes, blog series, or technical documentation.
  • You want to archive chat summaries or meeting notes as a single readable ebook.
  • You need an EPUB file to upload to Kindle via email or to distribute to readers.
  • You want consistent chapter and TOC generation from structured markdown.

Best practices

  • Use H1 headers for main chapters and H2 for sections to ensure correct TOC and chapter breaks.
  • Keep markdown well-formed: close brackets, proper code fences, and consistent list indentation.
  • Provide a clear title and author metadata when available; otherwise the first H1 becomes the title.
  • Limit extremely wide tables or very long inline code lines; code blocks support horizontal scrolling.
  • Preview the EPUB in an ebook reader to check fonts and spacing, as readers may apply their own styles.

Example use cases

  • Convert a research report written in markdown into an EPUB for distribution to collaborators.
  • Compile a series of blog posts into a single ebook for a newsletter or lead magnet.
  • Export a summarized chat transcript into an EPUB for team reference or onboarding material.
  • Produce a technical guide with syntax-highlight-ready code blocks packaged as an ebook.
  • Create study materials or notes in markdown and convert them to EPUB for reading on tablets.

FAQ

What determines chapter breaks?

H1 headers (#) are treated as chapter boundaries; content between H1s belongs to that chapter.

Can I specify title, author, or language?

Yes — you can supply metadata; if omitted the first H1 becomes the title and language defaults to UTF-8/undetermined.

Are images and external files supported?

Basic image embedding can be added if images are referenced and provided; advanced image optimization and multi-file merging are planned features.