# Site information
site_name: Outlines
site_author: The Outlines developers
site_description: >-
    Structured text generation with LLMs

# Repository
repo_name: dottxt-ai/outlines
repo_url: https://github.com/dottxt-ai/outlines

# Copyright
copyright: Copyright © 2023- The Outlines Developers

# Documentation directory
docs_dir: docs

# Configuration
theme:
    name: material
    palette:
        # Palette toggle for light mode
        - media: "(prefers-color-scheme: light)"
          scheme: default
          primary: white
    logo: assets/images/logo-square.svg
    favicon: assets/images/logo-square.png
    icon:
        repo: fontawesome/brands/github
    features:
        - content.code.copy
        - navigation.expand
        - navigation.tabs
        - navigation.sections
        - header.autohide
        - announce.dismiss
    font:
        text: Inter
        code: Source Code Pro

# Additional configuration
extra:
    social:
        - icon: fontawesome/brands/github
          link: https://github.com/dottxt-ai
        - icon: fontawesome/brands/twitter
          link: https://twitter.com/remilouf
    generator: false
    analytics:
        provider: google
        property: !ENV GOOGLE_ANALYTICS_KEY
    version:
        provider: mike
        default: latest
        alias: true

# Extensions
markdown_extensions:
    - admonition
    - def_list
    - attr_list
    - md_in_html
    - pymdownx.highlight:
          anchor_linenums: true
          line_spans: __span
          pygments_lang_class: true
          noclasses: True
          pygments_style: nord
    - pymdownx.superfences:
          custom_fences:
              - name: mermaid
                class: mermaid
                format: !!python/name:pymdownx.superfences.fence_code_format
    - pymdownx.tabbed:
          alternate_style: true
    - pymdownx.inlinehilite
    - pymdownx.details
    - pymdownx.emoji:
          emoji_index: !!python/name:material.extensions.emoji.twemoji
          emoji_generator: !!python/name:material.extensions.emoji.to_svg
    - pymdownx.snippets:

extra_css:
    - stylesheets/extra.css

plugins:
    - blog
    - mkdocstrings:
          default_handler: python
          handlers:
              python:
                  options:
                      docstring_style: numpy
                      show_submodules: true
    - search
    - section-index
    - social:
          cards_layout_options:
              color: #173a58
    - redirects:
          redirect_maps:
              "welcome.md": "index.md"

    - git-committers:
        repository: dottxt-ai/outlines
        branch: main
    - git-revision-date-localized:
        enable_creation_date: true
        type: timeago

    - gen-files:
        scripts:
        - scripts/gen_ref_pages.py
    - literate-nav:
        nav_file: SUMMARY.md

nav:
    - Home: index.md

    - Guide:
          - Getting Started: guide/getting_started.md
          - Installation: guide/installation.md
          - Migrating to v1: guide/migration.md
          - Vision-Language Models: guide/vlm.md
          - Deploying with FastAPI: guide/fastapi_vllm_deployment.md
          - Chat Templating for Instruct Models: guide/chat_templating.md
          - Architecture: guide/architecture.md

    - Features:
          - Overview: features/index.md

          - Core:
                - Models:
                    - Overview: features/models/index.md
                    - Anthropic: features/models/anthropic.md
                    - Dottxt: features/models/dottxt.md
                    - Gemini: features/models/gemini.md
                    - Llamacpp: features/models/llamacpp.md
                    - LM Studio: features/models/lmstudio.md
                    - Mlx-lm: features/models/mlxlm.md
                    - Ollama: features/models/ollama.md
                    - OpenAI: features/models/openai.md
                    - OpenAI compatible API: features/models/openai_compatible.md
                    - OpenRouter: features/models/openrouter.md
                    - OrcaRouter: features/models/orcarouter.md
                    - Requesty: features/models/requesty.md
                    - SGLang: features/models/sglang.md
                    - TGI: features/models/tgi.md
                    - Transformers: features/models/transformers.md
                    - TransformersMultiModal: features/models/transformers_multimodal.md
                    - vLLM (online server): features/models/vllm.md
                    - vLLM (offline): features/models/vllm_offline.md
                - Model Inputs: features/core/inputs.md
                - Output Types:
                    - Overview: features/core/output_types.md
                    - Basic Types: features/core/output_types#basic-python-types
                    - Multiple-Choices: features/core/output_types#multiple-choices
                    - JSON: features/core/output_types#json-schemas
                    - Regex: features/core/output_types#regex-patterns
                    - Context-free Grammars: features/core/output_types#context-free-grammars
                - Generator: features/core/generator.md
                - Error Handling: features/core/exceptions.md

          - Utilities:
                - Application: features/utility/application.md
                - Regex DSL: features/utility/regex_dsl.md
                - Template: features/utility/template.md

          - Advanced:
                - Logits Processors: features/advanced/logits_processors.md
                - Structured Generation Backends: features/advanced/backends.md

    - API Reference: api_reference/

    - Examples:
          - examples/index.md
          - Classification: examples/classification.md
          - Named Entity Extraction: examples/extraction.md
          - Dating Profiles: examples/dating_profiles.md
          - Chain of Density: examples/chain_of_density.md
          - Playing chess: examples/models_playing_chess.md
          - SimTom: examples/simtom.md
          - Q&A with Citations: examples/qa-with-citations.md
          - Knowledge Graph Extraction: examples/knowledge_graph_extraction.md
          - Structured Generation Workflow: examples/structured_generation_workflow.md
          - Chain of Thought (CoT): examples/chain_of_thought.md
          - ReAct Agent: examples/react_agent.md
          - Structured Generation from PDFs: examples/read-pdfs.md
          - Earnings Reports to CSV: examples/earnings-reports.md
          - Receipt Digitization: examples/receipt-digitization.md
          - Extract Events Details: examples/extract_event_details.md
          - Run on the cloud:
                - BentoML: examples/deploy-using-bentoml.md
                - Cerebrium: examples/deploy-using-cerebrium.md
                - Modal: examples/deploy-using-modal.md
    - Community:
        - community/index.md
        - Feedback 🫶: community/feedback.md
        - Our Discord Server ☕: https://discord.com/invite/R9DSu34mGd
        - How to Contribute 🏗️: community/contribute.md
        - Community Projects 👏: community/examples.md
        - Versioning Guide 📌: community/versioning.md

    - Blog: https://blog.dottxt.co