INHERIT: ./mkdocs.maybe-insiders.yml
site_name: SQLModel
site_description: SQLModel, SQL databases in Python, designed for simplicity, compatibility, and robustness.
site_url: https://sqlmodel.tiangolo.com/
theme:
  name: material
  custom_dir: docs/overrides
  palette:
  - media: "(prefers-color-scheme)"
    toggle:
      icon: material/lightbulb-auto
      name: Switch to light mode
  - media: '(prefers-color-scheme: light)'
    scheme: default
    primary: deep purple
    accent: amber
    toggle:
      icon: material/lightbulb
      name: Switch to dark mode
  - media: '(prefers-color-scheme: dark)'
    scheme: slate
    primary: deep purple
    accent: amber
    toggle:
      icon: material/lightbulb-outline
      name: Switch to system preference
  features:
  - content.code.annotate
  - content.code.copy
  # - content.code.select
  - content.footnote.tooltips
  - content.tabs.link
  - content.tooltips
  - navigation.footer
  - navigation.indexes
  - navigation.instant
  - navigation.instant.prefetch
  # - navigation.instant.preview
  - navigation.instant.progress
  - navigation.path
  - navigation.tabs
  - navigation.tabs.sticky
  - navigation.top
  - navigation.tracking
  - search.highlight
  - search.share
  - search.suggest
  - toc.follow

  icon:
    repo: fontawesome/brands/github-alt
  logo: img/icon-white.svg
  favicon: img/favicon.png
  language: en
repo_name: fastapi/sqlmodel
repo_url: https://github.com/fastapi/sqlmodel
plugins:
  # Material for MkDocs
  search:
  social:
  # Other plugins
  macros:
    include_yaml:
    - sponsors: data/sponsors.yml
    - members: data/members.yml

nav:
  - SQLModel: index.md
  - features.md
  - Learn:
    - learn/index.md
    - databases.md
    - db-to-code.md
    - environment-variables.md
    - virtual-environments.md
    - install.md
    - Tutorial - User Guide:
      - tutorial/index.md
      - tutorial/create-db-and-table-with-db-browser.md
      - tutorial/create-db-and-table.md
      - tutorial/insert.md
      - tutorial/automatic-id-none-refresh.md
      - tutorial/select.md
      - tutorial/where.md
      - tutorial/indexes.md
      - tutorial/one.md
      - tutorial/limit-and-offset.md
      - tutorial/update.md
      - tutorial/delete.md
      - Connect Tables - JOIN:
        - tutorial/connect/index.md
        - tutorial/connect/create-connected-tables.md
        - tutorial/connect/create-connected-rows.md
        - tutorial/connect/read-connected-data.md
        - tutorial/connect/update-data-connections.md
        - tutorial/connect/remove-data-connections.md
      - Relationship Attributes:
        - tutorial/relationship-attributes/index.md
        - tutorial/relationship-attributes/define-relationships-attributes.md
        - tutorial/relationship-attributes/create-and-update-relationships.md
        - tutorial/relationship-attributes/read-relationships.md
        - tutorial/relationship-attributes/remove-relationships.md
        - tutorial/relationship-attributes/back-populates.md
        - tutorial/relationship-attributes/cascade-delete-relationships.md
        - tutorial/relationship-attributes/type-annotation-strings.md
      - Many to Many:
        - tutorial/many-to-many/index.md
        - tutorial/many-to-many/create-models-with-link.md
        - tutorial/many-to-many/create-data.md
        - tutorial/many-to-many/update-remove-relationships.md
        - tutorial/many-to-many/link-with-extra-fields.md
      - tutorial/code-structure.md
      - FastAPI and Pydantic:
        - tutorial/fastapi/index.md
        - tutorial/fastapi/simple-hero-api.md
        - tutorial/fastapi/response-model.md
        - tutorial/fastapi/multiple-models.md
        - tutorial/fastapi/read-one.md
        - tutorial/fastapi/limit-and-offset.md
        - tutorial/fastapi/update.md
        - tutorial/fastapi/update-extra-data.md
        - tutorial/fastapi/delete.md
        - tutorial/fastapi/session-with-dependency.md
        - tutorial/fastapi/teams.md
        - tutorial/fastapi/relationships.md
        - tutorial/fastapi/tests.md
    - Advanced User Guide:
      - advanced/index.md
      - advanced/decimal.md
      - advanced/uuid.md
  - Resources:
    - resources/index.md
    - help.md
    - contributing.md
    - management-tasks.md
  - About:
    - about/index.md
    - alternatives.md
    - management.md
  - release-notes.md

markdown_extensions:
  # Python Markdown
  abbr:
  attr_list:
  footnotes:
  md_in_html:
  tables:
  toc:
    permalink: true

  # Python Markdown Extensions
  pymdownx.betterem:
    smart_enable: all
  pymdownx.caret:
  pymdownx.highlight:
    line_spans: __span
  pymdownx.inlinehilite:
  pymdownx.keys:
  pymdownx.mark:
  pymdownx.superfences:
    custom_fences:
    - name: mermaid
      class: mermaid
      format: !!python/name:pymdownx.superfences.fence_code_format
  pymdownx.tilde:

  # pymdownx blocks
  pymdownx.blocks.admonition:
    types:
    - note
    - attention
    - caution
    - danger
    - error
    - tip
    - hint
    - warning
    # Custom types
    - info
  pymdownx.blocks.details:
  pymdownx.blocks.tab:
    alternate_style: True

  # Other extensions
  mdx_include:
  markdown_include_variants:

extra:
  social:
  - icon: fontawesome/brands/github-alt
    link: https://github.com/fastapi/sqlmodel
  - icon: fontawesome/brands/twitter
    link: https://twitter.com/tiangolo
  - icon: fontawesome/brands/linkedin
    link: https://www.linkedin.com/in/tiangolo
  - icon: fontawesome/brands/dev
    link: https://dev.to/tiangolo
  - icon: fontawesome/brands/medium
    link: https://medium.com/@tiangolo
  - icon: fontawesome/solid/globe
    link: https://tiangolo.com

extra_css:
  - css/termynal.css
  - css/custom.css

extra_javascript:
  - js/termynal.js
  - js/custom.js

hooks:
  - scripts/mkdocs_hooks.py
