Skip to main content

Quickstart

Run PullMD on your machine with Docker and convert a page. You need Docker with the Compose plugin. Nothing else to configure: every setting has a working default.

  1. Download the compose file
    mkdir pullmd && cd pullmd
    curl -O https://raw.githubusercontent.com/AeternaLabsHQ/pullmd/main/docker-compose.yml
  2. Start PullMD
    docker compose up -d

    This starts PullMD and its three helper containers (Trafilatura, Playwright and MarkItDown). The first start downloads about 1.4 GB of images and uses about 5 GB of disk, most of it the headless browser.

    Port 3000 in use
    If port 3000 is taken, create a .env file next to the compose file with PORT=3080 (or any free port) and run the command again.
  3. Check that it's healthy
    curl http://localhost:3000/api/status
    Healthy response
    You should get "ok": true and each sidecar listed as "status": "ok". If a sidecar is down, the request returns HTTP 503; a sidecar that isn't set up shows not-configured.
  4. Convert a page
    curl "http://localhost:3000/api?url=https://en.wikipedia.org/wiki/Markdown"

    You get the article as Markdown: a # Title line, then the content. No navigation, no scripts.

  5. Ask a question

    To get only the sections that answer a question, add query:

    curl "http://localhost:3000/api?url=https://en.wikipedia.org/wiki/Markdown&query=who+created+markdown"

    The response headers say how much was cut: X-Extract-Original-Tokens and X-Extract-Returned-Tokens. Both are estimates of about four characters per token.

Use the web app​

Open http://localhost:3000 to paste a URL or drop a file. The file picker takes HTML files, e-mail, text and the other formats PullMD reads, and PDF and Office files when the MarkItDown sidecar is running. The result shows the Markdown, the extractor that produced it, and buttons to copy, download or share it. On a phone, install it as an app and share links to it straight from your browser.

Next steps​