Metadata-Version: 2.4
Name: exokit
Version: 0.2.2
Summary: Exokit — Your Databricks development power suit
Project-URL: Homepage, https://github.com/fouad-alsayadi/exokit
Project-URL: Repository, https://github.com/fouad-alsayadi/exokit
Project-URL: Issues, https://github.com/fouad-alsayadi/exokit/issues
Author-email: Fouad Alsayadi <fouad.alsayadi@databricks.com>
License-Expression: Apache-2.0
Keywords: ai,claude,databricks,demo,lakehouse,scaffold
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Software Development :: Code Generators
Requires-Python: >=3.11
Requires-Dist: databricks-sdk>=0.95.0
Requires-Dist: jinja2>=3.1.0
Requires-Dist: pydantic-settings>=2.0
Requires-Dist: pydantic>=2.0
Requires-Dist: pyyaml>=6.0
Requires-Dist: questionary>=2.1.1
Requires-Dist: rich>=13.0.0
Requires-Dist: structlog>=23.0.0
Requires-Dist: typer>=0.9.0
Provides-Extra: ai
Requires-Dist: anthropic<1.0,>=0.49; extra == 'ai'
Requires-Dist: instructor<2.0,>=1.0; extra == 'ai'
Provides-Extra: dashboards
Requires-Dist: pygal>=3.0; extra == 'dashboards'
Requires-Dist: sqlglot>=26.0; extra == 'dashboards'
Provides-Extra: studio
Requires-Dist: alembic>=1.14.0; extra == 'studio'
Requires-Dist: asyncpg>=0.30.0; extra == 'studio'
Requires-Dist: faker>=30.0; extra == 'studio'
Requires-Dist: fastapi>=0.119.0; extra == 'studio'
Requires-Dist: psycopg[binary]>=3.2.0; extra == 'studio'
Requires-Dist: pydantic-settings>=2.11.0; extra == 'studio'
Requires-Dist: python-dotenv>=1.0.0; extra == 'studio'
Requires-Dist: sqlalchemy[asyncio]>=2.0.30; extra == 'studio'
Requires-Dist: sse-starlette>=2.0; extra == 'studio'
Requires-Dist: uvicorn>=0.37.0; extra == 'studio'
Description-Content-Type: text/markdown

# Exokit — Your Databricks Development Power Suit

Generate production-grade Databricks demo projects in minutes. Choose your scope — full lakehouse + app, lakehouse only, or app only — answer a few questions, and get a deployed hello-world ready for Claude Code to build on.

## Install

```bash
pip install exokit
```

## Quick Start

```bash
# Check prerequisites (auto-installs missing tools)
exokit validate --fix

# Scaffold + deploy a new demo
exokit init my-demo-project
```

The CLI walks you through setup: project type, company, industry, Databricks profile, warehouse. Then it scaffolds and deploys everything end-to-end.

## Project Types

| Type | What Gets Built |
|------|-----------------|
| **Full** | Lakehouse pipelines + ML + dashboards + Genie + full-stack app |
| **Lakehouse** | Data gen + DLT pipelines + ML + dashboards + Genie (no app) |
| **App** | FastAPI + React on Databricks Apps, queries existing UC tables (no pipelines) |

## What You Get

| Layer | What Gets Built |
|-------|-----------------|
| Raw Data | Structured tables (Spark + Faker) + unstructured PDFs for RAG |
| Pipelines | Bronze (Auto Loader) → Silver (constraints) → Gold (metrics) |
| ML Models | AutoML + MLflow tracking + Unity Catalog model registration |
| Dashboards | AI/BI Lakeview dashboards + Genie Spaces |
| AI Agent | RAG agent with UC function tools |
| App | Full-stack React + FastAPI on Databricks Apps |
| Governance | CLAUDE.md, specialist agents, wave-based execution |

## Commands

```bash
exokit init [OUTPUT_DIR]              # Scaffold + deploy (interactive wizard)
exokit validate [--profile P] [--fix] # Check (and auto-install) prerequisites
exokit update-skills [PROJECT_DIR]    # Refresh bundled Databricks skills
```

## How It Works

```
You answer questions  →  exokit scaffolds  →  Claude builds the content
     (9 questions)       (deterministic)      (industry-specific)
```

Missing prerequisites? Exokit detects and offers to install them automatically — Databricks CLI, uv, Node.js, APX, and AI Dev Kit.

## Links

- [Documentation](https://github.com/fouad-alsayadi/exokit)
- [Issues](https://github.com/fouad-alsayadi/exokit/issues)
