Skip to main content

Opinionated Markdown converter with native LLM enhancement support

Project description

Markitai

PyPI Python CI License: MIT

Opinionated Markdown converter with native LLM enhancement support.

  • Multi-format: DOCX, PPTX, XLSX, PDF, TXT, MD, images (JPG/PNG/WebP), and URLs → clean Markdown
  • LLM enhancement: AI-powered format cleaning, frontmatter metadata, and vision analysis of embedded images via litellm, so any provider works (OpenAI, Anthropic, Gemini, local CLIs, and more)
  • Batch processing: concurrent conversion with progress display and --resume for interrupted jobs
  • OCR: scanned PDFs and images via RapidOCR
  • Web fetching: static HTTP with cache revalidation, or Playwright rendering for JS-heavy pages
  • Local web workspace: upload files or folders, submit URLs, configure LLM providers, compare results, retry failures, and revisit conversion history

Docs: https://markitai.dev

Install

Recommended: guided installer. Checks/installs Python and uv, lets you pick extras, installs optional components (Playwright browser, LibreOffice, FFmpeg), offers China-mainland mirror acceleration, and is bilingual (EN/中文):

# Linux/macOS
curl -fsSL https://markitai.dev/setup.sh | sh
# Windows (PowerShell)
powershell -ExecutionPolicy ByPass -c "irm https://markitai.dev/setup.ps1 | iex"

Minimal (uv / pip), if you already have Python 3.11-3.13 and just want the package:

uv tool install markitai     # isolated environment (recommended)
pipx install markitai        # or pipx

After a uv/pip install, do the setup steps the guided installer would have done for you:

markitai doctor           # check core and optional capabilities
markitai init             # create a config and set up an LLM provider

If you need Playwright browser rendering, add its package before asking doctor to install Chromium:

uv tool install "markitai[browser]" --force     # uv tool install
# pipx install "markitai[browser]" --force      # pipx alternative
markitai doctor --fix                           # install Chromium

Both installs provide the markitai command and the shorter mkai alias. They are the same command (mkai --help == markitai --help). If you already have a different mkai on your PATH, use the full markitai to avoid ambiguity.

Extras

Extra Enables
browser Playwright rendering for JS-heavy pages
claude-agent Claude Agent SDK as an LLM provider
copilot GitHub Copilot SDK as an LLM provider
extra-fetch curl-cffi HTTP client (better anti-bot compatibility)
kreuzberg Kreuzberg extraction backend
serve Local web workspace and REST API
svg SVG rasterization via cairosvg
all Everything above

Launch the local web workspace with:

uv tool install "markitai[serve]" --force
markitai serve

Quick start

markitai document.pdf -o out/            # convert a file
markitai https://example.com -o out/     # convert a URL
markitai ./docs -o out/ --llm            # batch convert with LLM enhancement
markitai document.pdf --preset rich      # LLM + alt text + descriptions + screenshots
markitai doctor                          # check dependencies and configuration
markitai init                            # interactive configuration setup

See the Getting Started guide for LLM configuration, presets, caching, and batch options.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

markitai-0.23.0.tar.gz (3.3 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

markitai-0.23.0-py3-none-any.whl (1.1 MB view details)

Uploaded Python 3

File details

Details for the file markitai-0.23.0.tar.gz.

File metadata

  • Download URL: markitai-0.23.0.tar.gz
  • Upload date:
  • Size: 3.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for markitai-0.23.0.tar.gz
Algorithm Hash digest
SHA256 33c8a82cc862cec9db959e5c339ec275195c35ce8d99ed8dee9d7a58a4dce2f5
MD5 30618180d474b3444e526d6c909deafe
BLAKE2b-256 7faba448917ad128545e2d231a7f0d9fda8735d5dbe045bd771c6ae23c53ed96

See more details on using hashes here.

Provenance

The following attestation bundles were made for markitai-0.23.0.tar.gz:

Publisher: publish.yml on Ynewtime/markitai

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file markitai-0.23.0-py3-none-any.whl.

File metadata

  • Download URL: markitai-0.23.0-py3-none-any.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for markitai-0.23.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0620dd6bc2e325297e26efdeb483f530eacbf553a8dedc4f694caae5a8e1d383
MD5 d77928a884ee2b5b99f3f34e242423c6
BLAKE2b-256 4391f3e67b9e7298078f8fbdfbdb1cde51ad84393553da366685d11d6555bc4d

See more details on using hashes here.

Provenance

The following attestation bundles were made for markitai-0.23.0-py3-none-any.whl:

Publisher: publish.yml on Ynewtime/markitai

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page