Metadata-Version: 2.4
Name: intility-bifrost-mkdocs
Version: 0.7.1
Summary: Intility Bifrost theme plugin for MkDocs Material
Author-email: Erlend Ellefsen <erlend.ellefsen@intility.no>
License-Expression: MIT
Project-URL: Homepage, https://intility.github.io/bifrost-mkdocs
Project-URL: Documentation, https://intility.github.io/bifrost-mkdocs
Project-URL: Repository, https://github.com/intility/bifrost-mkdocs
Project-URL: Issues, https://github.com/intility/bifrost-mkdocs/issues
Project-URL: Changelog, https://github.com/intility/bifrost-mkdocs/blob/main/CHANGELOG.md
Keywords: mkdocs,mkdocs-material,mkdocs-plugin,documentation,bifrost,intility,theme
Classifier: Development Status :: 4 - Beta
Classifier: Framework :: MkDocs
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: mkdocs>=1.6.1
Requires-Dist: mkdocs-material<10,>=9.7.0
Requires-Dist: mkdocs-git-revision-date-localized-plugin>=1.5.0
Requires-Dist: mkdocs-awesome-nav<4,>=3.1
Requires-Dist: markdown-callouts>=0.4
Provides-Extra: dev
Requires-Dist: livereload>=2.7.1; extra == "dev"
Requires-Dist: ruff>=0.15.0; extra == "dev"
Requires-Dist: pytest>=9.0.0; extra == "dev"
Dynamic: license-file

<h1 align="center">
  <img src="https://avatars.githubusercontent.com/u/35199565" width="124px"/><br/>
  Bifrost MkDocs
</h1>

<p align="center">
    <em>Intility's Bifrost design system as a Material for MkDocs plugin.</em>
</p>
<p align="center">
    <a href="https://python.org">
        <img src="https://img.shields.io/badge/python-v3.10+-blue.svg?logo=python&logoColor=white&label=python" alt="Python version">
    </a>
    <a href="https://squidfunk.github.io/mkdocs-material/">
        <img src="https://img.shields.io/badge/mkdocs--material-9.7.0+-blue.svg?logo=materialformkdocs&logoColor=white&label=mkdocs-material" alt="MkDocs Material version">
    </a>
    <a href="https://github.com/intility/bifrost-mkdocs/blob/main/LICENSE">
        <img src="https://img.shields.io/badge/license-MIT-blue.svg" alt="License">
    </a>
</p>

## Description

A pip-installable MkDocs plugin that applies Intility's Bifrost design system to Material for MkDocs. The plugin is batteries-included: colors, typography, component styling, markdown extensions, theme features, and admonition icons are all configured automatically.

## Installation

```bash
uv pip install intility-bifrost-mkdocs
```

## Usage

Add `intility-bifrost` to your `mkdocs.yml` plugins:

```yaml
theme:
  name: material
  palette:
    - scheme: default       # or 'light' — both map to Bifrost light mode
      primary: teal         # Options: teal, purple, pink, yellow
      toggle:
        icon: material/brightness-7
        name: Switch to dark mode
    - scheme: slate         # or 'dark' — both map to Bifrost dark mode
      primary: teal
      toggle:
        icon: material/brightness-4
        name: Switch to light mode

plugins:
  - intility-bifrost
  - search
```

## What it provides

Adding `intility-bifrost` to your plugins list gives you:

- **Bifrost design system** - Colors, typography, and component styling matching the Intility design system
- **Light/dark mode** - Automatic theme switching with Bifrost color variables
- **Theme colors** - teal, purple, pink, yellow (set via `primary` in your palette config)
- **Typography** - Satoshi for headings, Open Sans for body, JetBrains Mono for code
- **23 markdown extensions** - Admonitions, code highlighting, tabs, mermaid diagrams, math (MathJax), emoji, task lists, and more
- **13 theme features** - Instant navigation, search suggestions, code copy buttons, etc.
- **Admonition icons** - Custom FontAwesome icons for all admonition types
- **Bundled plugins** - `mkdocs-awesome-nav` and `mkdocs-git-revision-date-localized-plugin` are installed alongside; opt in by adding them to your `plugins:` list

All defaults are injected only when the user hasn't provided their own config, so you can override anything by setting it explicitly in your `mkdocs.yml`.

## Local development

```bash
uv venv .venv
source .venv/bin/activate
uv pip install -e ".[dev]"
mkdocs serve
```

This installs the plugin in editable mode with dev dependencies (ruff, pytest, livereload, git-revision-date plugin). The demo site at `docs/index.md` uses the plugin directly.
