Skip to main content

rust-mdbook (unofficial PyPI package for mdBook)

This is an unofficial repackaging. It isn't affiliated with or endorsed by the mdBook maintainers or the Rust project. For mdBook itself (docs, issues, source), go to rust-lang/mdBook. Report a packaging problem (a wheel that won't install, a missing platform) here, and anything about mdBook's behavior upstream.

mdBook is a command-line tool for building books from Markdown files. This package ships the unmodified upstream mdbook binary inside Python wheels, so you can install it with pip or uv and pin it in pyproject.toml along with the rest of your tools. You don't need a Rust toolchain.

Install

pip install rust-mdbook

or as a dev dependency with uv:

uv add --dev rust-mdbook

or run it once without installing:

uvx --from rust-mdbook mdbook --version

The package is named rust-mdbook (like rust-just for just), but the command it installs is plain mdbook, on your PATH inside the active virtualenv. There's no Python API; the package only contains the binary.

Usage

The command is upstream's mdbook, unchanged:

mdbook init my-book
mdbook build my-book
mdbook serve my-book --open

For everything else, see the mdBook User Guide.

Versioning

The package version mirrors the upstream release tag it was built from:

PyPI version Built from upstream
0.5.4 v0.5.4
0.5.4.post1 v0.5.4 (packaging-only fix)
0.5.5 v0.5.5

A .postN release contains the same mdBook source as its base version. Only the packaging changed. mdbook --version always prints the upstream version (mdbook v0.5.4).

To pin the upstream version, including any packaging fixes, use a compatible range: rust-mdbook>=0.5.4,<0.5.5.

Platforms

Prebuilt wheels:

OS Architectures Notes
macOS arm64, x86_64
Linux x86_64, aarch64 manylinux2014 (glibc ≥ 2.17)
Linux x86_64, aarch64 musllinux_1_2 (e.g. Alpine)
Windows x86_64

On any other platform, pip falls back to the source distribution and compiles mdBook locally. That requires a Rust toolchain at least as new as upstream's rust-version (1.88 for mdBook 0.5.4).

How it's built

  • Upstream source comes in as a git submodule (mdBook/), pinned to the exact release tag. upstream.toml records the tag and its commit SHA. Every build runs scripts/verify_upstream.py, which fails if the submodule, the recorded SHA, and the upstream tag disagree (for example, if the tag was moved).
  • Wheels are built with maturin in binary mode (bindings = "bin"), using upstream's Cargo.lock unchanged (cargo --locked) and upstream's default features.
  • In CI, each wheel is installed into a fresh virtualenv on its own platform, and mdbook --version has to match the pinned version.
  • Every GitHub Action is pinned to a full commit SHA. Releases go to PyPI through trusted publishing (OIDC), so no API tokens are involved, and come with PEP 740 attestations.
  • A scheduled workflow watches for new upstream releases and opens a PR that bumps the pin. It never publishes. A maintainer reviews, merges, and starts the release by hand.

License

mdBook is licensed under the Mozilla Public License 2.0. The LICENSE file in this repository is upstream's, copied verbatim, and it's included in every wheel and in the sdist. This repository's packaging files are under the same license.

As MPL-2.0 requires, the source for the binaries in these wheels is available: it's the upstream tag recorded in upstream.toml (at https://github.com/rust-lang/mdBook), and it's also included in this package's sdist on PyPI.

Development

git clone --recurse-submodules https://github.com/nickagliano/rust-mdbook
cd rust-mdbook
python scripts/verify_upstream.py        # check the pin
uvx maturin build --release --out dist   # build a wheel for this machine
python scripts/check_dist.py dist/*.whl  # install it in a fresh venv and test it

To release: run the Release workflow from master, first with index: testpypi, then with index: pypi.

Metadata

Release files for rust-mdbook 0.5.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for rust-mdbook 0.5.4
File Size Uploaded
rust_mdbook-0.5.4.tar.gz 962.1 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for rust-mdbook 0.5.4
File
rust_mdbook-0.5.4-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
rust_mdbook-0.5.4-py3-none-musllinux_1_2_x86_64.whl Python 3 none Linux musl 1.2+ x86-64 Details
rust_mdbook-0.5.4-py3-none-musllinux_1_2_aarch64.whl Python 3 none Linux musl 1.2+ ARM64 Details
rust_mdbook-0.5.4-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl Python 3 none Linux glibc 2.17+ x86-64 Details
rust_mdbook-0.5.4-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl Python 3 none Linux glibc 2.17+ ARM64 Details
rust_mdbook-0.5.4-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details
rust_mdbook-0.5.4-py3-none-macosx_10_12_x86_64.whl Python 3 none macOS 10.12+ x86-64 Details

Total release size: 34.1 MB

Release files / rust_mdbook-0.5.4.tar.gz

Download URL rust_mdbook-0.5.4.tar.gz
Size 962.1 kB
Tags Source
SHA-256 checksum
How to use checksums
7e5c6db8fbcb514a70c896355b39d596a464d9a2a2d84e088b4330855123a607
BLAKE2b-256 checksum
How to use checksums
4a95e9d7b7830ef804e22f1c21d4a7344f0cc71acef122441360d84aaa9c0448
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 11, 2026.

Transparency log

Release files / rust_mdbook-0.5.4-py3-none-win_amd64.whl

Download URL rust_mdbook-0.5.4-py3-none-win_amd64.whl
Size 4.7 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
a36bf32c59b3e8b50bf0a8818be96360d3b371ab59d2f896c763774e7a12099d
BLAKE2b-256 checksum
How to use checksums
9fa1ac9d8f19b16318822554b96c9b1e08758a5ca1e4b177b0582fcd0c455821
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 11, 2026.

Transparency log

Release files / rust_mdbook-0.5.4-py3-none-musllinux_1_2_x86_64.whl

Download URL rust_mdbook-0.5.4-py3-none-musllinux_1_2_x86_64.whl
Size 5.0 MB
Tags Linux musl 1.2+ x86-64 Python 3
SHA-256 checksum
How to use checksums
0d2d5b47a9ffc6978ac6bc250bd8b5b82403a97f8388c97ac26374bfe67dabc9
BLAKE2b-256 checksum
How to use checksums
e2deae5f409c2a391ac7545fc5c3a00ac483cc4af341bb6ba56719932561c45c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 11, 2026.

Transparency log

Release files / rust_mdbook-0.5.4-py3-none-musllinux_1_2_aarch64.whl

Download URL rust_mdbook-0.5.4-py3-none-musllinux_1_2_aarch64.whl
Size 4.6 MB
Tags Linux musl 1.2+ ARM64 Python 3
SHA-256 checksum
How to use checksums
ca5b795c88ef2813f362171c1aa9c3ae1a444c6ffc0fdd872ff791f6a5b5eab9
BLAKE2b-256 checksum
How to use checksums
d0c74029afcc73b0835542b062e853459219b2065d39b4a92710b7240d0d4a9d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 11, 2026.

Transparency log

Release files / rust_mdbook-0.5.4-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL rust_mdbook-0.5.4-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 4.9 MB
Tags Linux glibc 2.17+ x86-64 Python 3
SHA-256 checksum
How to use checksums
b1ecbf2210c407dec7ce6db913f6342935443abdf9af4ffad64ccc111662cfee
BLAKE2b-256 checksum
How to use checksums
b544543f57a62f24388c00693570aec3fdd8812756830c190cec0ed3500d908b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 11, 2026.

Transparency log

Release files / rust_mdbook-0.5.4-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL rust_mdbook-0.5.4-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 4.7 MB
Tags Linux glibc 2.17+ ARM64 Python 3
SHA-256 checksum
How to use checksums
503728265885112d06cbe452fdf11a0243ec132e3ea0fa6534f80b73b4cf5451
BLAKE2b-256 checksum
How to use checksums
59d43b107a653ac13e718c0e24a462741bd26336959693408fd92d4b658c1aee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 11, 2026.

Transparency log

Release files / rust_mdbook-0.5.4-py3-none-macosx_11_0_arm64.whl

Download URL rust_mdbook-0.5.4-py3-none-macosx_11_0_arm64.whl
Size 4.5 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
1266125e1b99b5cb56ee37199f927b2e244dd981c04197a72df98017c3481e18
BLAKE2b-256 checksum
How to use checksums
04d1f47d38121ab1baeb04024007ffe31fa58604909678207c2e254e49f99fef
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 11, 2026.

Transparency log

Release files / rust_mdbook-0.5.4-py3-none-macosx_10_12_x86_64.whl

Download URL rust_mdbook-0.5.4-py3-none-macosx_10_12_x86_64.whl
Size 4.7 MB
Tags Python 3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
b13f7bcd2fb5661ff996e91d2bfe126e3332b0c1866e4233ab0789aa50428c35
BLAKE2b-256 checksum
How to use checksums
bb4d1b9e7836b8319ed95b221644a21dfc76e4858c7644e5e4a4833c111626f0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 11, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.5.4 This release

8 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