Built by someone who needed it first.

j17 started as internal infrastructure. I was building systems that needed complete audit trails, dispute resolution, and the ability to reconstruct past state. Once I got used to Event Sourcing I never wanted to build any other way. I've mostly forgotten how to write sql.

I looked at the options. KurrentDB (EventStoreDB back then) was a powerful option, but expensive hosted (production clusters run $800-2,000/month now) and really hard to get running self-hosted, maybe somebody could have made it work but I fully gave up. I assume it's much better these days.

I built my own, starting with a minimal feature set, and used it for the best part of ten years. Most of those systems went nowhere (startups are hard) but some of them are in production to this day. Over christmas break 2025 a friend convinced me to turn it into a product so he didn't have to read my whole codebase. I took the opportunity to rewrite the tight loops in zig, and the rest in elixir, and released j17 to alpha March 2026.

What I care about

Performance efficiency

I chose Elixir for concurrency, Zig for the hot paths, and my own servers over resold cloud.

Simplicity

Six core operations cover 80% of use cases. The rest of the Tick declarative language handles the next 15% and for everything else you can write your own handlers in any language you can compile to wasm, or give me a containerized runtime.

Honesty over hype

Bootstrapped software, no VC pressure to 10x your bill. No enterprise sales team. Just software that works, priced fairly.

Questions? Feedback? Just want to talk shop?
hello@j17.app