Skip to main content

Lakehouse Observability Platform

Project description

Lakefront

A terminal-based lakehouse observability platform for exploring and managing data sources from your command line.


About

Working with lakehouse data — Parquet files on local disk or S3, DuckDB queries, materialized views — usually means jumping between tools, writing throwaway scripts, or wrestling with heavyweight UIs. Lakefront puts it all in one place: a fast TUI and CLI for data engineers who live in the terminal.

Problems it solves:

  • No single tool for lakehouse exploration — Lakefront combines DuckDB-powered SQL querying, S3 source management, and dataset browsing in one cohesive interface.
  • Configuration sprawl — profiles let you switch between environments (local dev, staging, production S3) with a single command, keeping credentials out of your scripts.
  • Context switching — instead of firing up a Jupyter notebook or a GUI just to peek at a Parquet file, you stay in the terminal.

Examples

Initialise Lakefront

Bootstrap the ~/.lakefront directory structure and create a default profile:

uv run lakefront init

Config Management

# List all profiles
uv run lakefront config list

# Show config directories and paths
uv run lakefront config info

# Create a new profile
uv run lakefront config create --profile staging

# Inspect a profile's current settings
uv run lakefront config inspect --profile staging

# See which profile is active
uv run lakefront config get-active

# Switch to a different profile
uv run lakefront config set-active --profile staging

Secrets (S3 access keys etc.) can be written to the TOML profile or set via environment variables instead:

export LAKEFRONT_S3__ACCESS_KEY=...
export LAKEFRONT_S3__SECRET_KEY=...

Project Management

Projects are the top-level organisational unit in Lakefront. Each project lives in its own directory under ~/.lakefront/projects/ and can be pinned to a config profile.

~/.lakefront/projects/
└── my-project/
    ├── project.toml      ← metadata + pinned profile
    └── results/          ← analysis outputs
# List all projects
uv run lakefront projects list

# Create a new project
uv run lakefront projects create my-project -d "EDA on S3 parquet" -p staging

# Inspect a project
uv run lakefront projects inspect my-project

# Delete a project (prompts for confirmation)
uv run lakefront projects delete my-project
uv run lakefront projects delete my-project --yes

Source Management

Data sources are attached to a project and point to a local path or S3 prefix.

# Add a source
uv run lakefront projects source add -p my-project -n raw -k s3 --path s3://bucket/raw/
uv run lakefront projects source add -p my-project -n local -k local --path /data/parquet/

# Remove a source
uv run lakefront projects source remove -p my-project -n raw

Project Structure

src/
├── core/   # config models, settings, project & source service
├── cli/    # Typer entrypoint and sub-commands
└── tui/    # Textual TUI app (in progress)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lakefront-0.2.1.tar.gz (16.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lakefront-0.2.1-py3-none-any.whl (26.1 kB view details)

Uploaded Python 3

File details

Details for the file lakefront-0.2.1.tar.gz.

File metadata

  • Download URL: lakefront-0.2.1.tar.gz
  • Upload date:
  • Size: 16.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for lakefront-0.2.1.tar.gz
Algorithm Hash digest
SHA256 413bd2af82c31959e3a8dcb261b6124976376c77d37e07acc1dd1ced5299f653
MD5 812081a64d07f2c9d4645ccd9ae10b37
BLAKE2b-256 8b0ba68cdb6aca9a4ad9d9916c41561d647062fb6c464fb0c216046b218e54b7

See more details on using hashes here.

File details

Details for the file lakefront-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: lakefront-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 26.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for lakefront-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 92dc0d5a26b5101e8455666b94869ae803ae708f54892c15798793fcaa429022
MD5 d41d9431c353757466a2e08b9a84e69f
BLAKE2b-256 8faa403b14602f77b9f3da938a62a7b206fb64972091c4013e70975178fc33b4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page