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. Citations also work in API docstrings rendered by mkdocstrings.

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.3

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.3
File Size Uploaded Provenance
mkdocs_webis-0.1.3.tar.gz 27.3 kB With provenance Details

Built distribution (wheel)

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

Total release size: 49.2 kB

Release files / mkdocs_webis-0.1.3.tar.gz

Download URL mkdocs_webis-0.1.3.tar.gz
Size 27.3 kB
Tags Source
SHA-256 checksum
How to use checksums
26a58621696ed1534eb5394bfb1be3e557cb61d25f45daa09795abaaa8f9d18e
BLAKE2b-256 checksum
How to use checksums
b67ca931f6aaf506a6343775c267788428a48f7cc2880c21d62c262f30c3bd32
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 20, 2026.

Transparency log

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

Download URL mkdocs_webis-0.1.3-py3-none-any.whl
Size 21.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7b88089665614d22dc737f2c026f8345bd51cb4586fa9a2a7d2e98aa8be0d577
BLAKE2b-256 checksum
How to use checksums
57669c232692adc24ac2fb6f5d9efc8c86631aee15280452911f0a1ac0c8cf49
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 20, 2026.

Transparency log

Security for mkdocs-webis 0.1.3

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.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for mkdocs_webis-0.1.3.tar.gz

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 20, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

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