Skip to main content

pdf2md-study

CI

English | 한국어

Convert papers and lecture slides (PDF) into study-ready Markdown for LLMs — equations and code kept as images, logos and references stripped.

Built on Docling.

Why

Uploading a PDF to an LLM sends the text and an image of every page. The Markdown is several times smaller and keeps what matters for studying. Each conversion prints an estimate like these:

Document PDF Markdown + images
26-page paper ~53,900 tokens ~14,600 ~3,300
39-page lecture slides ~116,400 tokens ~6,700 ~18,300

Features

  • Equations and code are cropped as images, so nothing is lost to recognition errors.
  • Logos and decorations repeated across pages are removed.
  • The references section is removed.
  • Slides get a [p.N] label on each page.
  • Images are named by page: p04_1.png, p05_eq1.png, p30_code1.png.

Get started

With uv installed:

uv tool install pdf2md-study
pdf2md-study paper.pdf

Or with Docker, with Docling's models included:

docker run --rm --user "$(id -u):$(id -g)" -v "$PWD:/data" ghcr.io/inhyunseo/pdf2md-study paper.pdf

paper.md and paper_artifacts/ appear next to the PDF.

  • Quickstart: step by step on Ubuntu, WSL2, macOS, and Windows
  • Usage: options, output, and tips for sending to an LLM

Development

git clone https://github.com/InHyunseo/pdf2md-study.git
cd pdf2md-study
uv sync
uv run pytest
uv run ruff check

Pull requests run lint and tests on Ubuntu, Windows, and macOS.

License

MIT

Metadata

Release files for pdf2md-study 0.2.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 pdf2md-study 0.2.0
File Size Uploaded
pdf2md_study-0.2.0.tar.gz 8.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pdf2md-study 0.2.0
File Interpreter ABI Platform
pdf2md_study-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 20.4 kB

Release files / pdf2md_study-0.2.0.tar.gz

Download URL pdf2md_study-0.2.0.tar.gz
Size 8.9 kB
Tags Source
SHA-256 checksum
How to use checksums
234c4fe4dcf28fc75184777c98cd8b4387c124647b3d5bd9b940c60c1ce8dd57
BLAKE2b-256 checksum
How to use checksums
0b94842d779e26e5a0b288510698696c1e61177e82703e933b0ffc4ab510b91b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / pdf2md_study-0.2.0-py3-none-any.whl

Download URL pdf2md_study-0.2.0-py3-none-any.whl
Size 11.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3b15b7b6b27137280c65cf2a4e2662f085d837566ef17da40aa2f4d3cf53a186
BLAKE2b-256 checksum
How to use checksums
fbb1ec294f9e0edd4d571cdde2b14c18e7026e5945dfcfccf676006b6685ed9a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

0.3.0

2 release files

0.2.1

2 release files

This release

0.2.0 This release

2 release files

0.1.0

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