Skip to main content

PyPi CI Code coverage Python Issues Commit activity Downloads License

📘 mkdocs-webis

Webis style and BibTeX citations for MkDocs Material.

This MkDocs plugin...

  • ... styles your documentation like the Webis homepage (a dark gray navigation bar with the Webis logo, the "Product Sans" and "Noto Sans" fonts, plain headings, blue links and buttons, flat tables, and a light gray footer),
  • ... lets you cite references from a BibTeX file with [@key] or [@key1, @key2], rendered as gray author–year citations like "[Fang et al., 2004]", and appends a list of the cited references (including their BibTeX) to each page.

The documentation is rendered with the plugin itself, so it doubles as a demo.

Installation

Install the package from PyPI:

pip install mkdocs-webis

Usage

Enable the plugin in your mkdocs.yml (together with the Material theme):

theme:
  name: material

plugins:
  - webis:
      # Optional: BibTeX file in your docs directory.
      bibliography: references.bib

Citations

With a bibliography configured, cite references by their BibTeX keys:

Axioms are formal constraints on retrieval models [@fang2004formal].
Some studies use axioms for re-ranking [@hagen2016axiomatic, @bondarenko2022axiomatic].

Citations are rendered as gray author–year links in brackets (e.g., "[Fang et al., 2004]" or "[Hagen et al., 2016; Bondarenko et al., 2022]"), like on the Webis slides. They link to a "References" section at the bottom of the same page, which lists all references cited on that page. Multiple keys are separated by commas or semicolons.

We recommend copying BibTeX entries from DBLP.

Style Elements

Besides styling the standard Material elements, the stylesheet provides a few CSS classes:

# Page Title

<p class="subtitle">A gray subtitle below the page title.</p>

<span class="badge">TFC1</span> — a small label, e.g., for names or acronyms.

The colors of webis.de are available as CSS variables (e.g., var(--webis-blue), var(--webis-red)) for your own stylesheets. See the style elements for how all elements look.

Development

To build this package and contribute to its development you need to install the build, setuptools and wheel packages:

pip install build setuptools wheel

(On most systems, these packages are already pre-installed.)

Development installation

Install package and test dependencies:

pip install -e .[tests]

Testing

Verify your changes against the test suite to verify.

ruff check .  # Code format, LINT, and security
mypy .        # Static typing
pytest .      # Unit tests

Please also add tests for your newly developed code.

Documentation and demo

The documentation in docs/ uses the plugin itself, including a page with all style elements and citations. Preview it locally to check changes to the style or the citations:

mkdocs serve

Build wheels

Wheels for this package can be built with:

python -m build

Support

If you have any problems using this package, please file an issue. We're happy to help!

License

This repository is released under the MIT license.

Metadata

Release files for mkdocs-webis 0.1.1

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

Source distribution (sdist)

Source distribution for mkdocs-webis 0.1.1
File Size Uploaded
mkdocs_webis-0.1.1.tar.gz 26.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for mkdocs-webis 0.1.1
File Interpreter ABI Platform
mkdocs_webis-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 47.7 kB

Release files / mkdocs_webis-0.1.1.tar.gz

Download URL mkdocs_webis-0.1.1.tar.gz
Size 26.4 kB
Tags Source
SHA-256 checksum
How to use checksums
a811de8ebd2713c43fb41b0cb9b5a8cecb2c67ceb69ab986d4cbaa7cba2c90f3
BLAKE2b-256 checksum
How to use checksums
844f63341c8dbe03a4b43cbeb586aad7f12662fe1ce7959d64f995a1087c0097
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 16, 2026.

Transparency log

Release files / mkdocs_webis-0.1.1-py3-none-any.whl

Download URL mkdocs_webis-0.1.1-py3-none-any.whl
Size 21.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
20c4b83a1493f93760de5e4aa8597f708ddeb8b2849a86bbbfcd5db223b6bf0a
BLAKE2b-256 checksum
How to use checksums
58a3cae12d20e1f7ddaf1b6eeae1c620d4ab40b33b32b6e071d69ce13f9c9dd0
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 16, 2026.

Transparency log

Release history Release notifications | RSS feed

0.1.2

2 release files

This release

0.1.1 This release

2 release files

0.1.0

2 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