Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

det — Data Engineering Toolkit

by det Labs

A modular, Python-first data engineering framework built by det Labs for modern analytical workflows.

CI Python License PyPI version det Labs


Current Status: Version 0.1.0 (Catalog MVP Released)

det (developed by det Labs) has completed its Version 0.1.0 milestone with the release of the Catalog Module (det.catalog):

  • Concurrency-safe, atomic YAML metadata persistence with file locks.
  • Automated schema discovery for Parquet, CSV, TSV, JSON, NDJSON, Excel, and directory datasets using Polars and PyArrow.
  • Leverages Python 3.15 stable native lazy import syntax for instantaneous engine load times.
  • Full Python programmatic Command API (CatalogService).
  • Interactive Local Browser Web GUI with vertical category explorer, draggable resizer, quick circular action buttons, Discover Schema modal, inline column description editing, and a 3-way theme switcher (Light / Dark / Auto System).
  • Typer CLI (det catalog ... and det-gui).

Architectural Vision & Module Roadmap

det is built from the ground up by det Labs to be modular, extensible, and Python-native:

┌─────────────────────────────────────────────────────────────┐
│                    User Interfaces                         │
│         CLI (`det`)   │   Web GUI (`det-gui`)   │   API     │
└──────────────┬──────────────────┬──────────────────┬────────┘
               │                  │                  │
┌──────────────▼──────────────────▼──────────────────▼────────┐
│                 det Core Modules (det Labs)                 │
│                                                             │
│  [ Released v0.1 ]                                          │
│  ├── det.catalog     Metadata, schemas, YAML store & GUI    │
│                                                             │
│  [ Planned Roadmap ]                                        │
│  ├── det.engine      Execution abstraction (DuckDB, Polars) │
│  ├── det.pipeline    DAG orchestration & SQL/Python models  │
│  ├── det.quality     Schema contracts, profiling & tests    │
│  ├── det.lineage     Table & column-level dependency graphs │
│  └── det.connectors  Ingestion & sync (Iceberg, Delta, S3)  │
└─────────────────────────────────────────────────────────────┘

Module Roadmap

Module Purpose Status
det.catalog Dataset discovery, typed schema inference, categories/namespaces, and visual catalog manager Released in v0.1.0
det.engine Unified query execution interface abstracting Polars, DuckDB, and Arrow in-memory compute Planned (v0.2)
det.pipeline Pipeline DAG execution, dbt-style transforms in SQL & Python, incremental materialization Planned (v0.3)
det.quality Data validation checks, statistical profiling, anomaly detection, and schema contracts Planned (v0.4)
det.lineage Column-level and dataset-level upstream/downstream lineage graphs Planned (v0.5)
det.connectors Multi-source extractors and destination sinks (S3, GCS, PostgreSQL, Snowflake, Iceberg, Delta) Planned (v0.6)

Quickstart

Prerequisites

  • Python: >= 3.15 (Stable released October 9, 2026)

Installation

From PyPI:

pip install det-core

Or from source:

# Clone the repository
git clone https://github.com/det-Labs/det.git
cd det

# Create virtual environment with Python 3.15
py -3.15 -m venv .venv
.venv\Scripts\activate       # On Windows
# source .venv/bin/activate  # On Linux/macOS

# Install in editable mode with development tools
pip install -e ".[dev]"

# Verify test suite
pytest

1. Launch the Catalog Web GUI

Experience the interactive visual catalog manager directly in your local browser:

det-gui

Navigate to http://127.0.0.1:8501:

  • Group datasets into categories / namespaces.
  • Point to local files or folders and click Discover Schema to auto-infer columns and types.
  • Drag the sidebar border to resize the explorer bar manually (double-click to reset).
  • Switch themes between Light, Dark, or Auto (System Default).
  • Edit column descriptions inline by clicking on them.
  • Switch between different YAML catalog files or create brand new catalogs.

2. Using the CLI

# View system & version info
det version
det info

# Scan a dataset to inspect its inferred schema without registering
det catalog scan sample_data/orders.parquet

# List all registered tables in active catalog
det catalog list

# Set a catalog file as the persistent default
det catalog set-default catalogs/main.yaml

3. Programmatic Python API

from det.catalog import CatalogService, DatasetMetadata

# Connect to catalog
service = CatalogService("catalogs/main.yaml")

# Discover schema from a Parquet or CSV file
scan = service.scan_path("data/customers.parquet")

# Register into catalog
service.register_dataset(DatasetMetadata(
    id="crm.customers",
    name="customers",
    namespace="crm",
    format="parquet",
    location="data/customers.parquet",
    description="Customer master records",
    columns=scan.columns,
    row_count=scan.row_count,
))

# Retrieve and inspect
dataset = service.get_dataset("crm.customers")
print(f"Table {dataset.name} has {len(dataset.columns)} columns and {dataset.row_count} rows.")

Testing & Quality

All code adheres to strict standards:

  • PEP 257 docstrings on all public functions, classes, and methods.
  • Explicit type annotations.
  • Python 3.15 lazy import integration.
  • Fast, automated pytest test suite:
pytest -v
ruff check .

Publishing a Release

Releases are published to PyPI only after the package passes tests and the pypi GitHub Environment deployment is approved. To release:

  1. Update the version in pyproject.toml and src/det/__init__.py.
  2. Push the changes to main and create a GitHub Release with a matching tag (for example, v0.1.0a2).
  3. After the workflow builds and tests the release, approve its deployment to the pypi environment in GitHub Actions. The workflow then publishes the distributions using PyPI Trusted Publishing (OIDC).

The pypi environment and the matching Trusted Publisher must be configured once in GitHub and PyPI, respectively.


License

Distributed under the Apache License 2.0. Copyright (c) 2026 det Labs. See LICENSE for details.

Metadata

Release files for det-core 0.1.1a2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for det-core 0.1.1a2
File Size Uploaded
det_core-0.1.1a2.tar.gz 130.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for det-core 0.1.1a2
File Interpreter ABI Platform
det_core-0.1.1a2-py3-none-any.whl Python 3 none any Details

Total release size: 251.1 kB

Release files / det_core-0.1.1a2.tar.gz

Download URL det_core-0.1.1a2.tar.gz
Size 130.6 kB
Tags Source
SHA-256 checksum
How to use checksums
391a3b871a93204ee62674a828914a33cc6058db3e6a314f1fa9e83441382d6c
BLAKE2b-256 checksum
How to use checksums
6df7f0aa84eb2451d8e2dfbaef920d8f031f3715761f2beaceff6b474bc4a209
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 11, 2026.

Transparency log

Release files / det_core-0.1.1a2-py3-none-any.whl

Download URL det_core-0.1.1a2-py3-none-any.whl
Size 120.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9f26ed2823a49c37100113d6e249ef89b639b97e5239bc0b90d391960a31c0ed
BLAKE2b-256 checksum
How to use checksums
279d52f78ab35bcfb77f2aae0ec34f69e80b20d8202fb4bf60db988cd6e1b0bc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 11, 2026.

Transparency log
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page