Documentation
Everything Lyraflow does, and what it does not do yet.
These pages are the product's own documentation, one page per section. It is the one place the surface is written down and kept current, and every limit in it has a number attached.
Written for v0.17 and generated from the README at v0.17.0, so these pages describe one release rather than whatever landed this week.
About v0.17
Self-hosted customer journey analytics. Your data stays on your servers.
Lyraflow records what people do in your product, stitches anonymous visits to known accounts, and lets you ask who did what. It runs on your own machine under Docker, and nothing leaves it.
Early days. v0.16 is the HTTP API and the operations behind it — ingest, identity, segments, funnels, trends, retention grids, dashboards, event reads, privacy, retention, quotas and backup — with a web UI over all of it. Web UI walks every screen and says, screen by screen, what each one does not do yet; the changelog says what each release added.
The largest gaps today: journeys and path analysis do not exist. A saved trend or retention report stores its question but not the range it ran over, so reopening one runs it over whatever range is on screen. Trait search takes one condition on one named trait, and cannot combine two or search every trait at once.
What it is good at
Knowing who someone is. A visitor browses anonymously, signs up two weeks later, then uses your product from a phone. Lyraflow ties all of that to one person, and reads their history back stitched. If two people share a device, each event is attributed to whoever was signed in at that moment — not to whoever used it last.
Deleting someone completely. DELETE /v1/persons/:id erases the underlying
rows, and every read path — segment counts, member lists, person reads, exports
— is filtered from the instant the request is accepted, not when the purge
finishes. A person deleted a second ago is already invisible.
Being cheap to run and hard to surprise. Events go to ClickHouse and identity to Postgres, one container each. Old events expire on a schedule you set. A project can be given a monthly event cap. One script backs both databases up together; another puts them back. Every limit in this document has a number attached, and the ones with known slack say so.
Being scriptable. Events, people, segments, schema and deletions all have
CLI wrappers with machine-readable output, so scripts and agents can use them
without a browser. See packages/cli/README.md.
License
Lyraflow is fair-code distributed under the Sustainable Use License. The source is always visible, and you are free to self-host, use and modify it for your own business.
It is not an OSI-approved open source license. The practical difference: you may not sell Lyraflow as a hosted service to other people.
Contributing
See CONTRIBUTING.md. We’d love your help once the foundation is in place.
Security problems go to private vulnerability reporting
or hello@lyraflow.app, never to the issue tracker — see
SECURITY.md.