Skip to main content

One-line installer for the India RideGenie Databricks demo (data + Genie + AI/BI dashboard + app).

Project description

🛺 ridegenie — India RideGenie demo, installed in one line

A dbdemos-style installer for the India RideGenie demo: natural-language geospatial analytics on synthetic Indian ride-hailing data — 200K trips · 160+ cities · ₹ fares · UPI payments.

One call provisions the whole thing into your Databricks workspace:

# Asset What it does
1 Unity Catalog data layer rides_enriched, ride_zones, pickup_hotspots (~200K rides, PIN-code geo)
2 Genie Space Ask in plain English — Genie writes governed SQL (₹, cities, surge, payments)
3 AI/BI Dashboard INR KPIs, demand-by-hour, surge, vehicle/payment mix + a live pickup-hotspot map
4 RideGenie App FastAPI + Leaflet — draw a region on an India map and ask Genie about it

Quick start (Databricks notebook)

%pip install git+https://github.com/anuj1303/ridegenie-demo.git
dbutils.library.restartPython()

import ridegenie
ridegenie.install("india-ridegenie")

That's it. The installer prints links to your Genie Space, Dashboard, and App when it finishes.

Prerequisite: a running SQL Warehouse (the Serverless Starter Warehouse is enough). Works on Databricks Free Edition and any AWS/Azure/GCP workspace.

Prefer not to write code? Import notebooks/00-START-HERE-RideGenie.py into your workspace and Run All.


What install() does (à la dbdemos)

  1. Resolves context — current user, workspace host, and a SQL warehouse (auto-picks a running one, or starts/creates one).
  2. Builds the data layer — creates the schema + volume, uploads the bundled (gzipped) CSVs, and runs a templated setup.sql to build the tables/views.
  3. Creates the Genie Space — registers the tables with format-assistance + entity-matching and applies domain instructions (INR, surge, payments).
  4. Creates & publishes the AI/BI dashboard — one shared dataset drives cross-filtering across KPIs, charts, and the hotspot map.
  5. Deploys the app — creates the app, uploads the source, attaches sql-warehouse + genie resources (IDs auto-injected), grants the app's service principal data access, and deploys.

Everything is workspace-portable — table names, warehouse, Genie/app resource IDs are resolved at install time via {{CATALOG}} / {{SCHEMA}} / {{VOLUME}} templating. No hard-coded IDs.


Options

ridegenie.install(
    "india-ridegenie",
    catalog="workspace",              # target UC catalog
    schema="india_rides_workshop",    # target UC schema
    warehouse_id=None,                # default: first running/available warehouse
    install_app=True,                 # set False to skip the FastAPI app
    profile=None,                     # only when running locally (Databricks CLI profile)
    overwrite=False,
)

Run locally (outside a notebook) against a CLI profile:

import ridegenie
ridegenie.install("india-ridegenie", profile="FreeEdition")

Package layout

ridegenie/
├── conf/india-ridegenie.json     # demo manifest (the "bundle_config")
├── installer.py                  # the Installer orchestrator + public install()
├── sql/setup.sql                 # templated data-layer DDL
├── genie/instructions.md         # Genie domain instructions
├── dashboards/india_ridegenie.lvdash.json   # AI/BI dashboard definition
├── data/*.csv.gz                 # pre-built synthetic data (uploaded to a Volume)
└── app/                          # FastAPI + Leaflet app source
notebooks/00-START-HERE-RideGenie.py   # one-click bootstrap notebook
scripts/                          # build_zones.py / generate_rides.py (regenerate the data)

Regenerating the data (optional)

The repo ships pre-built data. To rebuild it from source (GeoNames India PIN codes):

cd scripts
python3 build_zones.py       # downloads GeoNames, builds ride_zones.csv
python3 generate_rides.py    # builds rides.csv (200K trips)
gzip -c ride_zones.csv > ../ridegenie/data/ride_zones.csv.gz
gzip -c rides.csv      > ../ridegenie/data/rides.csv.gz

Built for Databricks Field Engineering. Synthetic data — no PII. PIN codes from GeoNames (India).

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

ridegenie-0.1.0.tar.gz (7.0 MB view details)

Uploaded Source

Built Distribution

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

ridegenie-0.1.0-py3-none-any.whl (7.0 MB view details)

Uploaded Python 3

File details

Details for the file ridegenie-0.1.0.tar.gz.

File metadata

  • Download URL: ridegenie-0.1.0.tar.gz
  • Upload date:
  • Size: 7.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ridegenie-0.1.0.tar.gz
Algorithm Hash digest
SHA256 7de2c2615ebe5916f7a03df732e7c15ad6974295235b8522d66d9850df855278
MD5 dbe413dd299913df5d9c42c3bce39773
BLAKE2b-256 f3fc0c6147e9330c7a82b5626a415e3914d782f39e4aedda2b11caefcf4e7062

See more details on using hashes here.

Provenance

The following attestation bundles were made for ridegenie-0.1.0.tar.gz:

Publisher: publish.yml on anuj1303/ridegenie-demo

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

File details

Details for the file ridegenie-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: ridegenie-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 7.0 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ridegenie-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f74e92d5b68af437f16c6a7fea7546da10d5155e2fcba4e024aea7f5a35779d4
MD5 0a288a514af89b576f53f490ee415376
BLAKE2b-256 eaf101a01a6abcfa3d188f23af28a50b536f3441456c151d25745390e6e3b412

See more details on using hashes here.

Provenance

The following attestation bundles were made for ridegenie-0.1.0-py3-none-any.whl:

Publisher: publish.yml on anuj1303/ridegenie-demo

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