Metadata-Version: 2.4
Name: frozen-ducklake
Version: 0.4.0
Summary: Frozen Data Lake - DuckLake catalog management CLI
Requires-Python: >=3.13
Requires-Dist: boto3>=1.35
Requires-Dist: dbt-core>=1.11.2
Requires-Dist: duckdb<1.5.0,>=1.4.0
Requires-Dist: jinja2>=3.1
Requires-Dist: pydantic>=2.0
Requires-Dist: pyyaml>=6.0
Requires-Dist: typer>=0.15
Provides-Extra: dlt
Requires-Dist: dlt[ducklake]>=1.6; extra == 'dlt'
Provides-Extra: metadata
Requires-Dist: dbt-core>=1.11.2; extra == 'metadata'
Description-Content-Type: text/markdown

# fdl

Frozen Data Lake — DuckLake catalog management CLI.

fdl manages the lifecycle of [DuckLake](https://ducklake.select/) catalogs: initialization, building, and distribution.
With a Git-like command interface, you can consistently manage your data catalogs from development to deployment.

## Installation

```bash
pip install frozen-ducklake
```

Requires Python 3.13 or later.

## Quick Start

```bash
# Initialize a project
fdl init my-dataset

# Configure a remote
fdl config remotes.origin s3://my-bucket

# Run the pipeline with injected env vars
fdl run -- dbt run

# Generate metadata from dbt artifacts
fdl metadata

# Push to remote
fdl push origin
```

## Commands

| Command | Description |
|---------|-------------|
| `fdl init` | Initialize a new project |
| `fdl pull` | Download catalog from remote |
| `fdl push` | Upload catalog to remote |
| `fdl metadata` | Generate metadata from dbt artifacts |
| `fdl run` | Run a command with injected env vars |
| `fdl gc` | Clean up orphaned data files |
| `fdl config` | Get or set configuration |
| `fdl serve` | Start an HTTP server |

## Documentation

Full documentation is available at [flo8s.github.io/fdl](https://flo8s.github.io/fdl/).
