Show HN: Tracecast – open-source generative data apps built on top of Marimo
This project lets you generate interactive data apps on top of your data, using a Cursor-style AI chat. It stitches together Marimo, LangGraph agents, and data warehouse connectors.
The main inspiration for this project was Marimo, an exciting open source python notebook that can be "queried with SQL, run as a script, and deployed as an app" ( source ). The recent release of Marimo Pair ( source ) demonstrated the power of connecting AI agents like Claude Code to Marimo notebooks directly. This project seeks to build on that work. It incorporates a LangGraph agent with two key abilities: (1) the ability to execute queries against a connected data warehouse (such as Snowflake); (2) the ability to write Marimo notebooks. This approach intentionally decouples exploratory data analysis from writing a finished Marimo notebook.
This project intentionally hides the Marimo edit mode. That means that the end user only ever sees a finished, read-only data app. Ease of use and trust in AI output were the main drivers behind this decision.
If ENCRYPTION_KEY is missing or shorter than 32 characters the web service refuses to start. This is deliberate — data-source credentials (Snowflake passwords, BigQuery service-account JSON, etc.) are AES-GCM encrypted at rest with a key derived from this value.
Once the stack is up, open http://localhost:3000 and go to Settings → Models to add an LLM provider and API key. The agent reads model configuration from the database, not from .env , so this step is required before the chat will respond.
docker compose up waits for each service's healthcheck before starting the next, so the web app never starts requesting LangGraph endpoints before the agent server is ready.