Skip to main content

MinerU Rust

Rust client library, command-line tools, and local API server for parsing PDF, image, and Office documents with an external OpenAI-compatible MinerU VLM service. PDF rendering uses pure Rust; no model is downloaded or run locally.

Compatibility is pinned to the MinerU 3.4.4 vlm-http-client transport baseline. See the compatibility contract and Chinese usage guide and English usage guide. This is not a full MinerU compatibility claim.

Requires Rust 1.89 or newer.

Rust library

cargo add mineru
use mineru::{ClientConfig, MinerUClient, ParseOptions, PdfInput};

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let client = MinerUClient::new(ClientConfig::new(
        "https://example.test/v1",
        "model-id",
    )?)?;
    let document = client
        .parse_pdf(PdfInput::Path("input.pdf".into()), ParseOptions::default())
        .await?;
    println!("{} pages", document.pages.len());
    Ok(())
}

CLI and API server

cargo install mineru
mineru --help

The package installs the mineru, mineru-api, mineru-vlm, and mineru-vlm-api binaries. To also install the mineru-office-convert Office conversion helper, build with --features office:

cargo install mineru --features office

See the Chinese usage guide or English usage guide for service configuration and complete options.

Python

Wheels support CPython 3.9 and newer:

pip install mineru-rs

The wheel installs two equivalent console commands, mineru and mineru-rs, both entering mineru_rs._cli:main. The mineru-rs name makes uvx mineru-rs --help work without a local checkout. Prefer mineru-rs when the upstream Python mineru package is also installed, since both provide a mineru entry point and the one earlier on PATH wins.

import mineru_rs

print(mineru_rs.canonical_stem("a bad/pdf"))
mineru_rs.validate_pdf_options(0, None, True, True, True)

Python currently exposes only canonical stem handling and PDF-option validation. It does not expose asynchronous document parsing. Releases are wheels only; there is no sdist or source fallback for unsupported platforms or PyPy.

Node.js

npm install @alexsun-top/mineru

The root package installs two equivalent binaries, mineru and mineru-rs, both pointing at bin/mineru.js, so node_modules/.bin/mineru-rs is available after install. The six platform packages intentionally ship no binary. Prefer mineru-rs if another mineru command is already on PATH.

const mineru = require('@alexsun-top/mineru')

console.log(mineru.canonicalStem('a bad/pdf'))
mineru.validatePdfOptions(0, null, true, true, true)

Node.js currently exposes only canonical stem handling and PDF-option validation. It does not expose asynchronous document parsing. Node.js 18 or newer is required.

License

Licensed under either Apache-2.0 or MIT, at your option.

Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

mineru_rs-0.2.2-cp39-abi3-win_amd64.whl (35.5 MB view details)

Uploaded CPython 3.9+Windows x86-64

mineru_rs-0.2.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (40.7 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ x86-64

mineru_rs-0.2.2-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (38.7 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ ARM64

mineru_rs-0.2.2-cp39-abi3-macosx_11_0_arm64.whl (37.5 MB view details)

Uploaded CPython 3.9+macOS 11.0+ ARM64

mineru_rs-0.2.2-cp39-abi3-macosx_10_12_x86_64.whl (38.0 MB view details)

Uploaded CPython 3.9+macOS 10.12+ x86-64

File details

Details for the file mineru_rs-0.2.2-cp39-abi3-win_amd64.whl.

File metadata

  • Download URL: mineru_rs-0.2.2-cp39-abi3-win_amd64.whl
  • Upload date:
  • Size: 35.5 MB
  • Tags: CPython 3.9+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for mineru_rs-0.2.2-cp39-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 41973da61c056fced03770d920df2dd4598b4a9cab4b510481fe8b6dbb87796c
MD5 10ededaed977047c6b9850b4b433dc02
BLAKE2b-256 cdbc877950ecaefb5d864561f97041669ca24f622cdcfba092f5fe63fe8cdc2a

See more details on using hashes here.

Provenance

The following attestation bundles were made for mineru_rs-0.2.2-cp39-abi3-win_amd64.whl:

Publisher: release.yml on agentsyaml/mineru-rs

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

File details

Details for the file mineru_rs-0.2.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for mineru_rs-0.2.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3eca65430803a0fdaef2c62b0b82efcf6d89eab7564c9601e71c13273fe62398
MD5 1c2e4e7d1c62f2ffdffbaa2555684023
BLAKE2b-256 f2086e68603143278d537438a53805721d52af3d7f4d8ad0eb251fb380c4554d

See more details on using hashes here.

Provenance

The following attestation bundles were made for mineru_rs-0.2.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on agentsyaml/mineru-rs

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

File details

Details for the file mineru_rs-0.2.2-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for mineru_rs-0.2.2-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 dc7817b4ac1da342bef8b0b4f17d408b61a6b0572f6fc7e82fb2d049fbe6a47c
MD5 2a44b80760a5bea4ba55a76de0698530
BLAKE2b-256 4b000dce15c7c48a1bf3a490f6bdb637ac0edf7204416068c338725f7ab7dad8

See more details on using hashes here.

Provenance

The following attestation bundles were made for mineru_rs-0.2.2-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on agentsyaml/mineru-rs

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

File details

Details for the file mineru_rs-0.2.2-cp39-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mineru_rs-0.2.2-cp39-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 37d0139369a9d684d84e400a6e16a980847096bb90c7d75da5446c985f53f87d
MD5 dc91f06cf69415d3254190486496e321
BLAKE2b-256 a5c5ac41252298ddd1e4926f3c93fc1922ece0bc33d9bf0ac6324506e44ea883

See more details on using hashes here.

Provenance

The following attestation bundles were made for mineru_rs-0.2.2-cp39-abi3-macosx_11_0_arm64.whl:

Publisher: release.yml on agentsyaml/mineru-rs

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

File details

Details for the file mineru_rs-0.2.2-cp39-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for mineru_rs-0.2.2-cp39-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 c11f38fb258515899aad2e15353af6bd716499aabe2fde4a2795f603b55f909c
MD5 eb5c5dc6dad0e79ea7246d430a3e47c3
BLAKE2b-256 1fb095863fb03141acd1f685c6e726279c43392119e9004a0a7d8f159b995cf4

See more details on using hashes here.

Provenance

The following attestation bundles were made for mineru_rs-0.2.2-cp39-abi3-macosx_10_12_x86_64.whl:

Publisher: release.yml on agentsyaml/mineru-rs

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

Release history Release notifications | RSS feed

0.3.0

5 files

0.2.9

5 files

0.2.8

5 files

0.2.7

5 files

0.2.6

5 files

0.2.5

5 files

0.2.4

5 files

0.2.3

5 files

This release

0.2.2 This release

5 files

0.2.1

5 files

0.2.0

5 files

0.1.1

5 files

0.1.0

5 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