# Configuration Reference URL: /docs/building/configuration/reference/ Section: configuration Tags: configuration, reference -------------------------------------------------------------------------------- Configuration Reference All options for bengal.toml. Every option has a sensible default — most sites only need [site] and [build]. [site] Site metadata used in templates, feeds, and SEO. [site] title = "My Site" # Required baseurl = "https://example.com" description = "Site description" author = "Author Name" language = "en" [build] Controls the build pipeline, caching, and parallelism. [build] output_dir = "public" # Where built files go content_dir = "content" # Where content lives assets_dir = "assets" # Static assets directory templates_dir = "templates" # Custom template overrides parallel = true # Enable parallel processing incremental = true # Enable incremental builds max_workers = 8 # Limit parallel workers (default: auto-detect) pretty_urls = true # /page/ instead of /page.html fast_mode = false # Skip HTML formatting for speed strict_mode = false # Fail on warnings debug = false # Extra logging minify_html = false # Minify HTML output validate_build = true # Run post-build validation validate_templates = false # Validate template context validate_links = false # Check internal links transform_links = true # Transform internal links to pretty URLs cache_templates = true # Cache compiled templates fast_writes = false # Skip write for unchanged files stable_section_references = false # Deterministic section IDs min_page_size = 0 # Minimum page count for parallel track_dependency_ordering = false # Track build dependency order parallel_graph = false # Parallel graph analysis parallel_autodoc = false # Parallel autodoc extraction [dev] Development server settings. [dev] port = 8000 # Server port live_reload = true # Enable live reload via SSE cache_templates = false # Cache templates in dev (default: off for hot reload) watch_backend = true # Watch backend files for changes [theme] Theme selection and appearance. [theme] name = "default" default_appearance = "system" # "light", "dark", or "system" default_palette = "" show_reading_time = true show_author = true show_prev_next = true show_children_default = false show_excerpts_default = false max_tags_display = 10 popular_tags_count = 20 features = [] # Feature flags: "content.math", etc. [theme.syntax_highlighting] theme = "auto" # Syntax theme name css_class_style = "semantic" # "semantic" or "pygments" [content] Content processing defaults. [content] default_type = "docs" excerpt_length = 200 excerpt_words = 50 summary_length = 300 reading_speed = 200 # Words per minute related_count = 5 related_threshold = 0.1 toc_depth = 3 toc_min_headings = 2 toc_style = "nested" # "nested" or "flat" sort_pages_by = "weight" # "weight", "date", "title", "modified" sort_order = "asc" strict_contracts = false [pagination] [pagination] per_page = 10 [search] Client-side search with Lunr. Can be true/false or a table. [search] enabled = true [search.lunr] prebuilt = false min_query_length = 2 max_results = 10 preload = "smart" # "immediate", "smart", "lazy" [search.ui] modal = true recent_searches = 5 placeholder = "Search..." [search.analytics] enabled = false event_endpoint = "" [assets] Asset processing pipeline. [assets] minify = false optimize = false fingerprint = false pipeline = true [html_output] HTML formatting for built pages. [html_output] mode = "pretty" # "minify", "pretty", "raw" remove_comments = false collapse_blank_lines = true [static] Static file handling. [static] enabled = true dir = "static" [features] Toggle site-wide features. [features] rss = true sitemap = true search = true json = false llm_txt = false syntax_highlighting = true [health_check] Build and content validation. Can be true/false or a table. [health_check] enabled = true verbose = false strict_mode = false orphan_threshold = 5 super_hub_threshold = 50 isolated_threshold = 0 lightly_linked_threshold = 3 build_validators = [] # Validators run during build full_validators = [] # Validators for full check ci_validators = [] # Validators for CI [health_check.connectivity_thresholds] well_connected = 0.7 adequately_linked = 0.4 lightly_linked = 0.1 [health_check.link_weights] explicit = 1.0 menu = 0.8 taxonomy = 0.6 related = 0.4 topical = 0.3 sequential = 0.2 [i18n] Internationalization settings. [i18n] strategy = "" # null or strategy name default_language = "en" default_in_subdir = false content_structure = "" fallback_to_default = true gettext_domain = "messages" [[i18n.languages]] code = "en" name = "English" weight = 1 [[i18n.languages]] code = "es" name = "Español" weight = 2 [output_formats] Control which output formats are generated. Can be true/false or a table. [output_formats] enabled = true per_page = ["html"] # Per-page formats site_wide = ["rss", "sitemap"] # Site-wide formats [output_formats.options] excerpt_length = 200 json_indent = 2 llm_separator_width = 80 include_full_content_in_index = false include_chunks = false exclude_sections = [] exclude_patterns = [] [content_signals] AI and crawler content policies. [content_signals] enabled = false search = true ai_input = true # Allow AI RAG/grounding ai_train = false # Allow AI training include_sitemap = true [content_signals.user_agents] "*" = "" # Per-agent policies [structured_data] Schema.org JSON-LD generation. [structured_data] article = true [markdown] Markdown parser configuration. [markdown] parser = "patitas" # "patitas" or "mistune" toc_depth = "2-4" [markdown.ast_cache] persist_tokens = false [graph] Knowledge graph analysis. Can be true/false or a table. [graph] enabled = false path = ".bengal/graph" [external_refs] Cross-project documentation links. Can be true/false or a table. [external_refs] enabled = false export_index = false cache_dir = ".bengal/refs" default_cache_days = 7 templates = {} [[external_refs.indexes]] name = "other-project" url = "https://example.com/refs.json" cache_days = 7 [link_previews] Hover card configuration. Can be true/false or a table. [link_previews] enabled = false hover_delay = 300 hide_delay = 200 show_section = true show_reading_time = true show_word_count = false show_date = false show_tags = false max_tags = 3 include_selectors = [] exclude_selectors = [] allowed_hosts = [] allowed_schemes = ["https"] host_failure_threshold = 3 show_dead_links = false [document_application] Modern browser features: view transitions, speculation rules, interactive elements. [document_application] enabled = false [document_application.navigation] view_transitions = false transition_style = "crossfade" # "crossfade", "fade-slide", "slide", "none" scroll_restoration = true [document_application.speculation] enabled = false auto_generate = false exclude_patterns = [] [document_application.speculation.prerender] eagerness = "moderate" # "conservative", "moderate", "eager" patterns = [] [document_application.speculation.prefetch] eagerness = "moderate" patterns = [] [document_application.interactivity] tabs = "css_state_machine" accordions = "native_details" modals = "native_dialog" tooltips = "popover" dropdowns = "popover" code_copy = "enhanced" [connect_to_ide] Cursor IDE integration. [connect_to_ide] enabled = false mcp_url = "" server_name = "" [taxonomies] Define taxonomy term→field mappings. [taxonomies] tags = "tags" categories = "categories" [data] Data file directory. [data] dir = "data" [autodoc.python] Python API documentation extraction. [autodoc.python] enabled = false source_dirs = [] output_prefix = "api" See Also Build Profiles — Environment-specific config Multi-Variant Builds — Build different site variants -------------------------------------------------------------------------------- Metadata: - Author: lbliii - Word Count: 1017 - Reading Time: 5 minutes