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
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 docs/usage.md 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
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mineru_rs-0.2.1-cp39-abi3-win_amd64.whl.
File metadata
- Download URL: mineru_rs-0.2.1-cp39-abi3-win_amd64.whl
- Upload date:
- Size: 34.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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6a497255e9f131e0df5132ce78c3852b7736aeaf13ec7fb9704b4cc5852685f3
|
|
| MD5 |
9b2d33d1f57a6407dd4cb7f76c138028
|
|
| BLAKE2b-256 |
e583eda12fa3d46fa941c4399b8bfb4953e4675184be192b102ce77cd3c50aa0
|
Provenance
The following attestation bundles were made for mineru_rs-0.2.1-cp39-abi3-win_amd64.whl:
Publisher:
release.yml on agentsyaml/mineru-rs
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mineru_rs-0.2.1-cp39-abi3-win_amd64.whl -
Subject digest:
6a497255e9f131e0df5132ce78c3852b7736aeaf13ec7fb9704b4cc5852685f3 - Sigstore transparency entry: 2312775455
- Sigstore integration time:
-
Permalink:
agentsyaml/mineru-rs@405daf7d138c3f821382031c939ba09c25f96d16 -
Branch / Tag:
refs/tags/v0.2.1 - Owner: https://github.com/agentsyaml
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@405daf7d138c3f821382031c939ba09c25f96d16 -
Trigger Event:
release
-
Statement type:
File details
Details for the file mineru_rs-0.2.1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: mineru_rs-0.2.1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 38.8 MB
- Tags: CPython 3.9+, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4276f0f59124c3ada7b140859726cef9c8dbd2c5124e7d094cda5891a7753392
|
|
| MD5 |
ac5f6a868156af13b6fb5f72cd2a5102
|
|
| BLAKE2b-256 |
933b213e5413724ee3222de18452dc360f8af8a5445ca208c795b25d978c2d90
|
Provenance
The following attestation bundles were made for mineru_rs-0.2.1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:
Publisher:
release.yml on agentsyaml/mineru-rs
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mineru_rs-0.2.1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -
Subject digest:
4276f0f59124c3ada7b140859726cef9c8dbd2c5124e7d094cda5891a7753392 - Sigstore transparency entry: 2312775430
- Sigstore integration time:
-
Permalink:
agentsyaml/mineru-rs@405daf7d138c3f821382031c939ba09c25f96d16 -
Branch / Tag:
refs/tags/v0.2.1 - Owner: https://github.com/agentsyaml
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@405daf7d138c3f821382031c939ba09c25f96d16 -
Trigger Event:
release
-
Statement type:
File details
Details for the file mineru_rs-0.2.1-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: mineru_rs-0.2.1-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 37.8 MB
- Tags: CPython 3.9+, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6136802df71abded81763707efc75488334d0ebcae1169148281728290f8b608
|
|
| MD5 |
19cf1f3e3a3c68f05b811a05d0f3fee4
|
|
| BLAKE2b-256 |
a1aba92084dd525fb627b7e492ee91494aef9439058a099e7910b4b3cea30965
|
Provenance
The following attestation bundles were made for mineru_rs-0.2.1-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:
Publisher:
release.yml on agentsyaml/mineru-rs
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mineru_rs-0.2.1-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl -
Subject digest:
6136802df71abded81763707efc75488334d0ebcae1169148281728290f8b608 - Sigstore transparency entry: 2312775438
- Sigstore integration time:
-
Permalink:
agentsyaml/mineru-rs@405daf7d138c3f821382031c939ba09c25f96d16 -
Branch / Tag:
refs/tags/v0.2.1 - Owner: https://github.com/agentsyaml
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@405daf7d138c3f821382031c939ba09c25f96d16 -
Trigger Event:
release
-
Statement type:
File details
Details for the file mineru_rs-0.2.1-cp39-abi3-macosx_11_0_arm64.whl.
File metadata
- Download URL: mineru_rs-0.2.1-cp39-abi3-macosx_11_0_arm64.whl
- Upload date:
- Size: 36.0 MB
- Tags: CPython 3.9+, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a1387562317c437a2c96f14dac8d15649520c1b69318faa1634c8ff1caa4889e
|
|
| MD5 |
924500ab3eee54f47dacc3c4ab21109b
|
|
| BLAKE2b-256 |
a920f8b91d0ba1683535adbec983233a02090669ff967972a1b21ba2429cc1e8
|
Provenance
The following attestation bundles were made for mineru_rs-0.2.1-cp39-abi3-macosx_11_0_arm64.whl:
Publisher:
release.yml on agentsyaml/mineru-rs
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mineru_rs-0.2.1-cp39-abi3-macosx_11_0_arm64.whl -
Subject digest:
a1387562317c437a2c96f14dac8d15649520c1b69318faa1634c8ff1caa4889e - Sigstore transparency entry: 2312775425
- Sigstore integration time:
-
Permalink:
agentsyaml/mineru-rs@405daf7d138c3f821382031c939ba09c25f96d16 -
Branch / Tag:
refs/tags/v0.2.1 - Owner: https://github.com/agentsyaml
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@405daf7d138c3f821382031c939ba09c25f96d16 -
Trigger Event:
release
-
Statement type:
File details
Details for the file mineru_rs-0.2.1-cp39-abi3-macosx_10_12_x86_64.whl.
File metadata
- Download URL: mineru_rs-0.2.1-cp39-abi3-macosx_10_12_x86_64.whl
- Upload date:
- Size: 37.0 MB
- Tags: CPython 3.9+, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3e69d535893aacab1892e1c8ba6d78ae97c49c10e837387e3abf87683254ca22
|
|
| MD5 |
441359a49c542b803c1f5b42f01b17f1
|
|
| BLAKE2b-256 |
33df1c7849724b5325170e1f56a215664a9b471d496a01b1366ead305cebe902
|
Provenance
The following attestation bundles were made for mineru_rs-0.2.1-cp39-abi3-macosx_10_12_x86_64.whl:
Publisher:
release.yml on agentsyaml/mineru-rs
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mineru_rs-0.2.1-cp39-abi3-macosx_10_12_x86_64.whl -
Subject digest:
3e69d535893aacab1892e1c8ba6d78ae97c49c10e837387e3abf87683254ca22 - Sigstore transparency entry: 2312775446
- Sigstore integration time:
-
Permalink:
agentsyaml/mineru-rs@405daf7d138c3f821382031c939ba09c25f96d16 -
Branch / Tag:
refs/tags/v0.2.1 - Owner: https://github.com/agentsyaml
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@405daf7d138c3f821382031c939ba09c25f96d16 -
Trigger Event:
release
-
Statement type: