Operational is an event tracker for the things a product does at runtime: signups, payments, cancellations, webhooks, cron runs and errors. Instead of paging yourself through a dozen log windows, you post one JSON event to the API and it lands in a single chronological feed, with the option to push a critical one straight to a phone. It is aimed at small SaaS teams that need to know what just happened without standing up a full observability stack.
A small JavaScript SDK wraps the API in a few lines of code, and the same endpoint accepts plain HTTP posts from anything that can send JSON — a Stripe webhook, a cron job, a shell script on a router. The point is deliberately low ceremony: one POST per event, no agent, no sidecar.
The stack is intentionally ordinary: Node.js 18 or newer, MySQL 8, Prisma and an Express backend with a Vue 3 single-page app in front. ClickHouse is optional and only comes into play for heavier deployments, so the open source version needs no columnar database to get started. The project ships Docker images and a compose setup, plus written and video guides for deploying on your own VPS or on a platform such as Render — self-hosting is the maintainers’ stated preference rather than an afterthought. Because it is licensed under the AGPL, anyone offering a modified version as a network service has to publish those changes.
Operational is not a metrics store, a tracing backend or an alerting engine with on-call schedules: it tells you what happened and lets you act on it, and the graphs and SLOs belong to a tool like Grafana or Netdata. A self-hosted instance also needs a MySQL database to look after, so it is a heavier commitment than a single static binary.