Skip to main content

markdown_hero

CI PyPI version Python versions License: MIT Typed

A Python library for processing Markdown — cleanup, chunking, Word (.docx) export, concatenation, splitting by delimiters, and validation.

Compatible with Python 3.10+. Target dialect: GitHub Flavored Markdown (GFM).

Installation

pip install markdown_hero
# with a real tokenizer (tiktoken) for accurate chunking:
pip install "markdown_hero[tokenizers]"

Main functions

Function What it does
strip(md, ...) Reduces Markdown to normalized plain text (no diacritics, no punctuation, lowercase).
extract_chunks(md, purpose=...) Splits the document respecting heading hierarchy, with rich metadata.
word_format(md, output) Exports to .docx with a fixed set of professional styles.
markdown_append(*paths, output) Concatenates files with heading shift and frontmatter merge.
markdown_break(path, delimiter, ...) Splits a file into N+1 parts. Accepts string, regex, or list.
markdown_merge(*paths, output) Smart append with section dedupe and TOC generation.
extract_* Frontmatter, links, images, tables, code blocks, headings, TOC.
lint(md) Detects skipped headings, duplicate anchors, unclosed fences.
CLI markdown-hero Command-line access.

See docs/reference.md for the full technical reference and docs/helpers.md for the index of internal utilities.

Quick example

from markdown_hero import strip, extract_chunks, word_format

text = "**Hello!** See [docs](https://x). p=2 captures both."
print(strip(text))
# "hello see docs p2 captures both"

chunks = extract_chunks(open("doc.md").read(), purpose="rag", max_tokens=512)
word_format("doc.md", "doc.docx")

CLI

markdown-hero strip doc.md -o doc.txt
markdown-hero chunk doc.md --purpose rag --max-tokens 512 -o chunks.json
markdown-hero word doc.md -o doc.docx
markdown-hero append a.md b.md -o merged.md
markdown-hero break doc.md "---" --output-dir parts/
markdown-hero lint doc.md

Documentation

Contact

Questions, suggestions, and reports:

  • Email: bernardo.leandro@gmail.com
  • Always include the prefix Markdown Hero: in the subject line so the message is routed correctly.

For security vulnerabilities follow the instructions in SECURITY.md (same email, same subject prefix).

License

MIT © 2026 Bernardo Leandro.

Metadata

Release files for markdown-hero 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for markdown-hero 0.1.0
File Size Uploaded
markdown_hero-0.1.0.tar.gz 44.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for markdown-hero 0.1.0
File Interpreter ABI Platform
markdown_hero-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 77.5 kB

Release files / markdown_hero-0.1.0.tar.gz

Download URL markdown_hero-0.1.0.tar.gz
Size 44.3 kB
Tags Source
SHA-256 checksum
How to use checksums
5f8055328e8b7e14f836d46a98907487828a923bf41850c4edd37b8532b3968f
BLAKE2b-256 checksum
How to use checksums
371d6635115f8f48c57e23a654a28b4680f33b5eb199a069c1d0cf0ece5d2d0d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.9

Release files / markdown_hero-0.1.0-py3-none-any.whl

Download URL markdown_hero-0.1.0-py3-none-any.whl
Size 33.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
dda264221400686c66aa64c7fd75ad9ba9232ad0cb6ef1de18b08c46c57f35ce
BLAKE2b-256 checksum
How to use checksums
a7a1098da1afc9cd67c06b021368881f2c62cbdf864c6f50533913fac2d28234
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.9

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page