Documentation Index
Fetch the complete documentation index at: https://launchpad.datalumina.com/llms.txt
Use this file to discover all available pages before exploring further.
Before you begin, ensure you have completed the system requirements setup.
- macOS & Linux
- Windows
Clone the repository
Open your terminal and navigate to your desired project directory:Clone the GenAI Launchpad repository:
Configure environment variables
Navigate to the project directory:Copy the example environment files:These files serve different runtimes:
| File | Used by | What belongs here |
|---|---|---|
.env | Local Python runs from your machine, such as uv run playground/..., unit tests, and one-off scripts | LLM provider keys, Langfuse keys, and local app settings loaded by python-dotenv |
docker/.env | Docker Compose, the containerized Launchpad stack, the database, and optional Supabase services | Compose project settings, database credentials, container ports, JWT/secrets, Docker-side provider keys, and optional Supabase configuration |
Start Docker containers
Navigate to the Docker directory and start the containers:This command will:
- Build all Docker containers
- Start all services via Docker Compose
Set up Python environment
Return to the project root and sync the environment:
uv sync creates and manages the .venv, installs the pinned Python version if needed, and installs the Launchpad package in editable mode.Run database migrations
Navigate to the package directory where Create a new migration (you’ll be prompted for a description):Apply the migration:
alembic.ini and the migration scripts live:Optional: enable Supabase services
Supabase Studio, Auth, Realtime, Storage, and the Supabase gateway are excluded by default. To enable them, uncomment
docker-compose.supabase.yml in docker/docker-compose.yml, then restart the Docker stack.If you run Python locally against the Docker database, update the root .env database user from postgres to postgres.<POOLER_TENANT_ID>, for example postgres.launchpad with the default docker/.env settings. Supavisor requires the tenant-qualified username.When enabled, Studio is available at http://localhost:8000 with the dashboard credentials from docker/.env.Exercise workflows from the playground
Theplayground/ directory contains one script per reference workflow. Each script loads a matching JSON fixture from the workflow’s request_examples/ folder, runs the workflow in-process, and prints the final TaskContext. They are the fastest way to iterate on a workflow without running the full API + Celery stack.
| Script | Workflow | What it does |
|---|---|---|
playground/quickstart.py | CustomerCareWorkflow | Runs a customer-care ticket end-to-end (concurrent analysis → routing → reply). |
playground/nested_workflow.py | NestedWorkflow | Runs a parent workflow that delegates reply drafting to a child workflow with the same TaskContext. |
playground/streaming.py | ExampleStreamingWorkflow | Iterates run_stream_async and prints each streamed chunk. |
playground/langfuse_tracing.py | LangfuseTracingWorkflow | Runs the moderation pipeline; set LANGFUSE_* env vars to capture traces. |
playground/pgvector_rag.py | RagExampleWorkflow | Runs retrieval + generation against the pgvector collection. |
uv: