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.1

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.1
File Size Uploaded
pdf2md_study-0.2.1.tar.gz 10.3 kB Details

Built distribution (wheel)

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

Total release size: 23.2 kB

Release files / pdf2md_study-0.2.1.tar.gz

Download URL pdf2md_study-0.2.1.tar.gz
Size 10.3 kB
Tags Source
SHA-256 checksum
How to use checksums
d2c518f6249d1bcd5e71b577f7aafeb5e858e260e2daca8c371466de444c2f54
BLAKE2b-256 checksum
How to use checksums
cd89041b0863b1d0baec7529fbbee230c655fe952dcc8431db7ca699f89beea0
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.1-py3-none-any.whl

Download URL pdf2md_study-0.2.1-py3-none-any.whl
Size 12.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
09fa6a0c08dcc880ad11702f4729e4c8b69215e69c0cd0e90ac4108ff88406f1
BLAKE2b-256 checksum
How to use checksums
35aba518f35a07064a81a90e5a7d7479a1b54a7f993b644aa1d102b56dde55bf
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

This release

0.2.1 This release

2 release files

0.2.0

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