e2m: Convert Documents and Media into Markdown

e2m: Convert Documents and Media into Markdown

Summary

E2M is a Python library for parsing documents, web pages, and audio into Markdown through configurable parser and converter components. It is aimed at developers preparing varied source material for RAG, training data, or downstream text workflows.

At a glance

Language
Jupyter Notebook
License
Apache-2.0
Stars
1.3k
Forks
76
Added to OSRepos
December 24, 2025
Last analyzed
October 3, 2026
View on GitHub

Topics

Click on any tag to explore related repositories

Use at your own risk

OSRepos shares public repositories for knowledge and discovery only. Any installation, execution, configuration, or use of code from these repositories is the user's own responsibility. Always review the repository, source code, dependencies, licenses, and security implications before running or installing anything. OSRepos is not responsible for issues, damages, or losses resulting from third-party repositories.

Overview

E2M is a Python library that extracts content from document files, web pages, and audio, then supports converting parsed text and images into Markdown. Its parser-and-converter design lets users choose engines for different formats rather than relying on one universal extraction method.

It is most relevant to developers building ingestion workflows for RAG or model training, or consolidating mixed source material into Markdown. The project also offers an API service and configuration-based integrated parsers and converters.

Key Features

  • Parses PDF, DOC and DOCX, EPUB, HTML, PPT and PPTX, URLs, MP3, and M4A sources.
  • Offers format-specific parser engines, including Marker, Unstructured, Pandoc, Jina, and Whisper options.
  • Converts extracted text and images to Markdown using configurable text and image converters.
  • Supports an integrated parser and converter configured through YAML.
  • Provides a Python library interface and an API service.
  • Targets content preparation for RAG and model training or fine-tuning.

Use Cases

  • A RAG developer can normalize a collection of PDFs, office documents, and web pages into Markdown for ingestion.
  • A data team can extract text from presentations and EPUBs when assembling training or fine-tuning material.
  • An application developer can transcribe audio files and include the resulting text in a document-processing workflow.
  • A team processing different source formats can select parser engines per format and keep configuration in a YAML file.

Project Facts

  • Language: Jupyter Notebook
  • License: Apache-2.0
  • Stars: 1.3k
  • Forks: 76
  • Topics: doc2x, e2m, llm, markdown, pdf-to-markdown, text-cleaning
  • Archived: No

Getting Started

Install from the repository with pip:

pip install git+https://github.com/wisupai/e2m.git --index-url https://pypi.org/simple

See the README for parser examples, configuration, and API setup.

Alternatives

  • attachments: Attachments produces structured text and image artifacts and offers LLM workflow adapters, while e2m focuses on configurable parsing and conversion to Markdown.
  • OmniParse: OmniParse is a self-hosted service covering video as well as documents, audio, and web pages; e2m is a Python library centered on Markdown conversion.
  • pdf-craft: PDF Craft specializes in OCR for scanned books and documents, with EPUB and translation output, while e2m handles varied source types.

Considerations

  • Parser capabilities and setup depend on the selected engine. Some engines may require separate tools, model downloads, or service credentials.
  • Text and image conversion examples use model providers and API keys. Local Whisper is also offered for audio parsing.
  • The README documents Python 3.10 and 3.11. Check engine-specific requirements before choosing a deployment setup.
  • The repository metadata identifies the license as Apache-2.0, while the README states MIT. Verify the repository's license file before relying on licensing terms.

Found this useful?

Share it with someone who would like e2m.

Comparisons

Source repository

Open the original repository on GitHub.

20 counted GitHub visits

View on GitHub

Related repositories

Similar repositories that may be relevant next.

OS
OSRepos

Analysis and discovery of open source repositories. Find interesting projects and follow their updates.

Monitor your website with YourWebsiteScore

OSRepos shares public repositories for knowledge and discovery only. Any installation, execution, configuration, or use of third-party repository code is at your own risk. Always review source code, dependencies, licenses, and security implications before running anything.

© 2025 OSRepos. Built with Nuxt 3 and lots of ❤️