Configuration
Project Configuration
Section titled “Project Configuration”Configure your project with fyrnheim.yaml at the project root:
entities_dir: entitiesdata_dir: dataoutput_dir: generatedbackend: duckdbbackend_config: db_path: my_project.duckdb
# Push results to a separate output backend after fyr runoutput_backend: clickhouseoutput_config: host: localhost port: "8123" database: default user: default password: ""Configuration Options
Section titled “Configuration Options”| Option | Description | Default |
|---|---|---|
entities_dir | Directory containing entity Python files | entities |
data_dir | Directory containing local data files (parquet, CSV) | data |
output_dir | Directory where generated transform code is written | generated |
backend | Transformation backend (duckdb, bigquery) | duckdb |
backend_config | Backend-specific configuration (see below) | {} |
output_backend | Optional output backend for pushing results | none |
output_config | Output backend-specific configuration | {} |
Backend Configuration
Section titled “Backend Configuration”DuckDB:
backend: duckdbbackend_config: db_path: my_project.duckdbBigQuery:
backend: bigquerybackend_config: project: my-gcp-project dataset: analyticsCLI Flags
Section titled “CLI Flags”All settings can be overridden via CLI flags. For example:
fyr run --backend bigqueryThis runs on BigQuery regardless of what fyrnheim.yaml says.
Use fyr --help to see all available CLI options:
fyr --helpfyr generate --helpfyr run --helpProduction Deployment
Section titled “Production Deployment”A typical production pattern:
- Extract raw data with DLT (or any EL tool) into parquet files or a warehouse
- Transform with Fyrnheim:
fyr run --backend bigquery(or duckdb for local) - Push results to an output backend for serving (ClickHouse, Postgres, etc.)
Configure the output backend in fyrnheim.yaml:
backend: duckdb # transform backendoutput_backend: clickhouse # push dim/analytics tables here after runoutput_config: host: ch.example.com port: "8123" database: analyticsThis separation lets you develop locally on DuckDB while pushing production results to a fast query engine.