Getting started
Chomper takes events your own systems already produce — a sale, a support call, a status change — and turns them into dashboards you can actually read. There's no separate pipeline to stand up first: you send events to one HTTP endpoint, and dashboards, drill-downs, and (if you want them) enrichment and lookup tables are already there waiting.
Don't have a running Chomper instance yet? It deploys as a single Docker Compose stack, so the target machine needs Docker and the Docker Compose plugin installed first — see Quick Start: Docker & Docker Compose for install steps per OS, then run the install command from your personal cabinet. Come back here once it's up.
Four steps take you from a fresh install to a working dashboard:
- Generate an API key — Settings → API Keys. Every event you send needs one, and no install ships with a default key, so this is always the first real step.
- Send your first event — one HTTP request from whichever system already knows about the thing worth tracking (your checkout flow, your CRM, a cron job). See Sending events for the exact request shape and a ready-to-run example.
- (Optional) Attach extra context — Enrichments and Reference tables let you look up and attach extra data (a CRM record, a computed flag) to an event before it's stored, without changing whatever system actually sends it.
- Build a dashboard — Dashboards covers panels, drill-downs, and sharing what you've built with the rest of your team.
These don't have to happen in order, and steps 3 isn't required at all: sending raw events and building dashboards from them works from day one. Enrichment and reference tables are worth adding once you know what extra context is actually worth attaching — there's no setup cost to deferring them.
What happens to an event you send
An event you send is checked for a valid API key, optionally passed through one enrichment function if you named one, and then stored. From that point it's available to every dashboard panel immediately — there's no separate "processing complete" step to wait for, and no batch delay to account for when you're testing something end to end.
Note. If an enrichment fails, times out, or you named one that doesn't exist, the event is still stored exactly as sent — Chomper never drops an event because something optional went wrong. See Enrichments for exactly how that fallback is recorded.
Last updated 14 July 2026