Skip to main content

Local web studio for inspecting DataCoolie metadata, lineage, and ETL logs.

Project description

DataCoolie Studio

DataCoolie Studio is a local web app for exploring DataCoolie projects. Use it to manage sources, edit metadata, inspect lineage, and monitor extract, transform, and load (ETL) runs.

What you can do

  • Organize sources by Project and Environment
  • Read and edit metadata in JSON, YAML, or XLSX format
  • Inspect lineage from metadata, SQL queries, and Python code
  • Monitor Dataflow, Job, and System logs
  • Connect to Local, S3, MinIO, ADLS, OneLake, GCS, and Databricks storage
  • Store cloud credentials in the operating system credential store

Studio keeps source files as the source of truth. Metadata saves validate the document and create a backup before replacing the original file. Lineage combines evidence for display without creating a merged metadata file.

Install and run

DataCoolie Studio requires Python 3.11 or later.

pip install datacoolie-studio
datacoolie-studio

The launcher starts Studio at http://127.0.0.1:8765, creates its local workspace on first run, and opens your browser.

Install only the cloud integrations you need:

pip install "datacoolie-studio[s3]"
pip install "datacoolie-studio[minio]"
pip install "datacoolie-studio[adls]"
pip install "datacoolie-studio[onelake]"
pip install "datacoolie-studio[gcs]"

Databricks SDK support is included in the base installation. Use pip install "datacoolie-studio[cloud]" to install every other cloud integration.

Create your first workspace

  1. Create a Project
  2. Add an Environment such as dev, test, or prod
  3. Add a metadata file or scan a DataCoolie project
  4. Add ETL logs for Monitoring
  5. Add Python code artifacts when metadata references Python functions
  6. Open Metadata, Assets, Lineage, or Monitoring

Metadata is required. Logs and code artifacts are optional.

Configure Studio

Studio stores local state under ~\.datacoolie\datacoolie-studio\:

db\studio.db
backups\
cache\
logs\

Common launcher options:

datacoolie-studio --port 8765
datacoolie-studio --host 127.0.0.1
datacoolie-studio --db .\.scratch\studio.db
datacoolie-studio --database-url "postgresql+psycopg://user:password@host:5432/datacoolie_studio"
datacoolie-studio --no-open

You can also configure storage with environment variables:

Variable Purpose
DATACOOLIE_STUDIO_DB SQLite workspace database path
DATACOOLIE_STUDIO_DATABASE_URL SQLAlchemy database URL; overrides the SQLite path
DATACOOLIE_STUDIO_RESULT_CACHE_URL Result-cache SQLite URL

Studio binds to 127.0.0.1 by default. Choose a shared database and review network access before hosting it for multiple users.

Develop from source

Run the backend directly from src. This assumes the active Python environment already contains the dependencies declared in pyproject.toml.

$env:PYTHONPATH = "$PWD\src"
python -m uvicorn datacoolie_studio.main:app `
  --reload `
  --host 127.0.0.1 `
  --port 8765

Run the frontend in another terminal:

cd frontend
npm install
npm run dev

Open http://127.0.0.1:5173. Vite sends API requests to the backend at http://127.0.0.1:8765.

Build the frontend into the Python package:

cd frontend
npm run build

Run repository checks:

.\scripts\verify.ps1
.\scripts\verify.ps1 -Mode Full

The default check covers architecture, packaged static assets, security, API contracts, frontend tests, and the production build. Full mode also runs the complete backend test suite.

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

datacoolie_studio-0.1.2.tar.gz (4.1 MB view details)

Uploaded Source

Built Distribution

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

datacoolie_studio-0.1.2-py3-none-any.whl (1.8 MB view details)

Uploaded Python 3

File details

Details for the file datacoolie_studio-0.1.2.tar.gz.

File metadata

  • Download URL: datacoolie_studio-0.1.2.tar.gz
  • Upload date:
  • Size: 4.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for datacoolie_studio-0.1.2.tar.gz
Algorithm Hash digest
SHA256 b65595ed5d273ace9453a190c49055413b3f2906ecac956163d786c2ff25e947
MD5 0453ee68521ee2ef00851de450bed935
BLAKE2b-256 49b194621336f9806ecfba4f81274df50df03f36f2d975403d56516f9d621ab6

See more details on using hashes here.

Provenance

The following attestation bundles were made for datacoolie_studio-0.1.2.tar.gz:

Publisher: publish-pypi.yml on datacoolie/datacoolie-studio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file datacoolie_studio-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for datacoolie_studio-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 ad3174f1a98d7c15386e729660b70e4385f243e2d9ef146c5b2a1394c71a2d52
MD5 762fd6811f068ae695cf38af8e47fc0e
BLAKE2b-256 98b460cb68bf3f92e24d7c1f49945c6cf73c3cb8c186d9c6320aa7775d5e1ed6

See more details on using hashes here.

Provenance

The following attestation bundles were made for datacoolie_studio-0.1.2-py3-none-any.whl:

Publisher: publish-pypi.yml on datacoolie/datacoolie-studio

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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