Kettle — self-hosted analytics

Role
Solo project
Stack
TypeScript · ClickHouse · Docker
Outcome
300M events per month on a single ClickHouse node.
Clients in healthcare could not send analytics outside their own infrastructure, so hosted tools were off the table from the start. Kettle ships as a single container with ClickHouse behind it. One node absorbs 300M events a month, and the schema stays readable enough that clients write their own queries.