Skip to content

Configuration

Andreas Duschl edited this page Jun 4, 2026 · 13 revisions

cr4te ships with defaults and can load partial JSON config files. CLI options can then override selected behavior.

Print a Config

To inspect the resolved default config:

cr4te print-config

To print a domain-specific config:

cr4te print-config --domain music

Save it if you want a self-contained starting point:

cr4te print-config --domain music > cr4te.config.json

Then build with it:

cr4te build -i path/to/Musicians -o path/to/site --config cr4te.config.json

Config Sections

The top-level sections are:

  • site_labels: generated page labels, control labels, metadata labels, and project facet labels.
  • site_rendering: visible fields, gallery layout, media ordering, metadata rendering, and portrait display.
  • media_rules: scan rules, image sampling, naming rules, and creator/project discovery behavior.

Unknown top-level sections and unknown nested keys are rejected.

Partial Configs

Config files can be partial. Nested sections under site_labels and site_rendering merge recursively into defaults. media_rules merges at the section level.

Example:

{
  "site_labels": {
    "entity": {
      "creator": "Artist",
      "creators": "Artists"
    }
  }
}

Gallery Settings

Overview card galleries and media galleries are configured under site_rendering.galleries.

Gallery strategies:

  • aspect: fixed aspect-ratio grid.
  • justified: row-based justified image layout.

Example:

{
  "site_rendering": {
    "galleries": {
      "project_cards": {
        "building_strategy": "aspect",
        "aspect_ratio": "1/1",
        "page_size": 100,
        "image_max_height": 350,
        "creator_page_image_max_height": 450
      }
    }
  }
}

Project Metadata Rendering

Project facet rendering is configured under site_rendering.project_metadata.

{
  "site_rendering": {
    "project_metadata": {
      "defaults": {
        "separator": ", ",
        "searchable": false,
        "clickable": false,
        "tags": false
      },
      "fields": {
        "genres": {
          "searchable": true,
          "clickable": true,
          "tags": true
        }
      }
    }
  }
}

Meanings:

  • searchable: values are added to overview search text.
  • clickable: values render as links to a filtered project overview.
  • tags: values appear on tag pages and tag lists.
  • separator: controls how multiple values render.

Media Rules

Important defaults:

  • max_search_depth: 5
  • image_gallery_sample_max: 20
  • image_gallery_sample_strategy: spread
  • global_exclude_prefix: _
  • metadata_folder_name: meta
  • collaboration_separators: ["&", ","]
  • portrait_basename: portrait
  • cover_basename: cover
  • auto_find_portraits: false

CLI Overrides

Build and print-config support:

  • --domain
  • --image-sample-strategy
  • --portrait-strategy

When a CLI domain override is applied, it replaces the active project facet field set rather than merging with the existing field set.

Clone this wiki locally