site_name: Nanopub cross-platform toolkit
site_description: A cross-platform toolkit to sign and publish Nanopublications, written in Rust with bindings to Python and JS (wasm)
site_author: Vincent Emonet
site_url: https://vemonet.github.io/nanopub-rs
repo_name: vemonet/nanopub-rs
repo_url: https://github.com/vemonet/nanopub-rs
edit_uri: "edit/main/docs/"
copyright: Copyright &copy; 2023 Vincent Emonet

# Find icons: https://fontawesome.com/icons/
# https://squidfunk.github.io/mkdocs-material/reference/icons-emojis/
nav:
  - Docs:
    - Introduction: index.md
    - Packages: packages.md
    - Command Line Interface: cli.md
    - JavaScript:
      - Example bare HTML: javascript-example-html.md
      - Example JS framework: javascript-example-framework.md
    - Development:
      - Architecture details: architecture.md
      - Contributing: contributing.md
  - Playground: playground.html" target="_blank
  # - Issues: https://github.com/vemonet/nanopub-rs/issues" target="_blank

theme:
  name: "material"
  favicon: assets/logo.png
  logo: assets/logo.png
  icon:
    admonition:
      server: material/server
  language: en
  # Change color: https://squidfunk.github.io/mkdocs-material/setup/changing-the-colors/#primary-color
  palette:
    - media: "(prefers-color-scheme: light)"
      scheme: default
      primary: blue
      accent: white
      toggle:
        icon: material/weather-night
        name: Switch to dark mode
    - media: "(prefers-color-scheme: dark)"
      scheme: slate
      primary: blue
      accent: white
      toggle:
        icon: material/weather-sunny
        name: Switch to light mode
  features:
    - navigation.indexes
    - navigation.sections
    - navigation.tabs
    - navigation.top
    - navigation.tracking
    - navigation.footer
    - content.code.copy
    - content.code.annotate
    - content.code.select
    - content.tabs.link # Group tabs switch
    - content.action.edit
    - content.action.view
    - search.highlight
    - search.share
    - search.suggest
    - toc.follow
    # - header.autohide
    # - navigation.tabs.sticky
    # - navigation.expand
    # - navigation.instant

plugins:
- search
- open-in-new-tab
- autorefs
- mkdocstrings:
    default_handler: python
    handlers:
      python:
        options:
          show_source: true
    # custom_templates: templates

markdown_extensions:
  - admonition
  # Supported admonititions: https://squidfunk.github.io/mkdocs-material/reference/admonitions/#supported-types
  - pymdownx.highlight:
      anchor_linenums: true
  - pymdownx.inlinehilite
  - pymdownx.snippets
  - pymdownx.superfences
  - pymdownx.tabbed:
      alternate_style: true
      # slugify: !!python/object/apply:pymdownx.slugs.slugify
      #   kwds:
      #     case: lower
  - pymdownx.details
  - pymdownx.extra
  - abbr
  - pymdownx.tasklist:
      custom_checkbox: true
  - pymdownx.snippets:
      auto_append:
        - includes/abbreviations.md
  - attr_list
  - smarty
  # - md_in_html

extra_css:
  - assets/custom.css

extra:
  social:
    - icon: fontawesome/brands/rust
      link: https://crates.io/crates/nanopub
    - icon: fontawesome/brands/npm
      link: https://www.npmjs.com/package/@nanopub/sign
    - icon: fontawesome/brands/python
      link: https://pypi.org/project/nanopub-sign
    - icon: fontawesome/brands/github
      link: https://github.com/Nanopublication
    # - icon: fontawesome/brands/docker
    #   link: https://github.com/vemonet/nanopub-rs/pkgs/container/nanopub-rs

watch:
  - ../src
  - docs
