Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

dex

dex is an opinionated CLI framework for data project operations. It scaffolds Python packages, Databricks Asset Bundles, and AI agent projects — and can be extended by teams to wrap their own tooling.

100% Rust. Single binary. No runtime required.

Install

curl -sSf https://raw.githubusercontent.com/yarrib/dex/main/install.sh | sh

Auto-detects your platform and downloads the right binary from GitHub Releases. See Installation for manual install, Windows, and build-from-source options.

30-second example

# Scaffold a new Databricks Asset Bundle project
dex init --template dabs-package --dir my_project

# Scaffold a plain Python package
dex init --template default --dir my_package

# Non-interactive (use all defaults)
dex init --template dabs-package --no-prompt --dir my_project

What dex generates

For a dabs-package project:

my_project/
├── src/my_project/
│   ├── __init__.py
│   └── main.py          # entry point with argparse
├── resources/
│   └── my_project_job.yml   # DABs job definition
├── notebooks/
│   └── exploration.py   # Databricks notebook
├── tests/
│   ├── __init__.py
│   └── test_my_project.py
├── databricks.yml       # bundle config (dev/staging/prod targets)
├── pyproject.toml       # project config
├── dex.toml             # dex project config
├── README.md
└── .gitignore

Next steps