Lightweight Task queue on Erlang/OTP, SQLite-backed, no overengineering

Setting up Kafka or such enterprise oriented software with their clusters or dedicated servers is heavy and bothering enough that most small teams or indie hackers skip it entirely and making compromise to use in-memory queues.I wanted something in between: a persistent queue that is simple to run (one binary, which makes one sqlite db), gets real fault isolation and crash recovery due to Elixir, easy to inspect (open ezra.db in any SQLite browser and see every task), and requires no new client library - it speaks the Redis Streams wire protocol, so any Redis client in any language just works out of the box.Very short demo video: [https://www.youtube.com/watch?v=MLYyD3DVWmE]

Hacker NewsToolDevSource
0Sign in to voteCopy link

FL score

72

out of 100

Verdict

VALIDATE

high confidence

Competition

No competitor data yet

Trend

No signal yet

A single-binary task queue that trades off some enterprise features for simplicity, targeting teams too small for Kafka but too serious for in-memory queues.

The pain

Small teams and indie hackers need persistent task queues for reliability, but Kafka/RabbitMQ require infrastructure overhead (clusters, dedicated servers, operational complexity). They either skip queues entirely and use in-memory solutions that lose tasks on crashes, or they over-engineer their setup.

The gap

The market has a missing middle: persistent, fault-tolerant, easy-to-operate task queues that don't require DevOps knowledge. Existing solutions cluster at two extremes, lightweight but fragile (in-memory) or heavy but robust (enterprise message brokers).

Build angle

Ship a working product first. The Redis Streams protocol compatibility is a genuine advantage, it eliminates client library friction. Validate by getting 20-30 teams actively using it in production for 2-3 months. Measure: task throughput, crash recovery reliability, and whether users actually inspect the SQLite database (indicating transparency value). Then decide if the market wants this enough to justify ongoing maintenance.

Strengths

  • Single binary deployment removes operational friction, no containers, clusters, or configuration management needed
  • Redis Streams wire protocol compatibility means zero client-side integration work; existing Redis libraries work immediately
  • SQLite backend is inspectable and debuggable by non-specialists; transparency is a real differentiator
  • Erlang/OTP provides genuine fault isolation and crash recovery without the user having to think about it
  • Solves a real problem for a specific segment (small teams, indie hackers, early-stage startups)

Risks

  • Market size is unclear, how many teams are actually stuck in this middle ground? Many small teams may accept in-memory queues or bite the bullet on Kafka
  • SQLite has single-writer limitations; unclear if this scales to teams with higher throughput needs, creating a hard ceiling on addressable market
  • Maintenance burden falls on creator; one person maintaining a critical infrastructure component is a trust issue for production users
  • Redis Streams protocol compatibility is table-stakes, not a moat; competitors can copy this quickly
  • No clear monetization path; infrastructure tools are notoriously hard to charge for when open-source alternatives exist
  • Requires ongoing support and bug fixes; infrastructure software has high support costs relative to other categories

Questions about this idea?

FlyBot reads the scoring and gives you a second opinion on “Lightweight Task queue on Erlang/OTP, SQLite-backed, no overengineering”.

Open FlyBot