zeybek

zeybek / ulak

Public

PostgreSQL extension for reliable async message delivery to HTTP, Kafka, MQTT, Redis, AMQP & NATS — atomically committed with your transaction, using the transactional outbox pattern

11
1
100% credibility
Found Apr 16, 2026 at 11 stars -- GitGems finds repos before they trend. Get early access to the next one.
Sign Up Free
AI Analysis
C
AI Summary

Ulak is a PostgreSQL extension providing transactional outbox for atomic, reliable message delivery to HTTP, Kafka, MQTT, Redis, AMQP, and NATS.

How It Works

1
🔍 Discover Reliable Messaging

You want your database app to send notifications or events to other services without losing any, even if something crashes.

2
📦 Add to Your Database

Install the helper inside your PostgreSQL database so it works seamlessly with your data.

3
🎯 Set Up Destinations

Point it to where messages should go, like web services, queues, or streams, with simple details.

4
Send Your First Message

Inside your normal database work, add a message and commit – it gets queued safely and automatically.

5
🚀 Watch Delivery Happen

Background friends pick up messages, send them reliably with smart retries if needed.

6
📊 Check and Manage

See what's sent, retry any issues, or pause destinations easily from your database.

Messages Flow Perfectly

Your app now sends events reliably every time, no data lost, fully integrated with your database.

Sign up to see the full architecture

5 more

Sign Up Free

Star Growth

See how this repo grew from 11 to 11 stars Sign Up Free
Repurpose This Repo

Repurpose is a Pro feature

Generate ready-to-use prompts for X threads, LinkedIn posts, blog posts, YouTube scripts, and more -- with full repo context baked in.

Unlock Repurpose
AI-Generated Review

What is ulak?

ulak is a PostgreSQL extension implementing the transactional outbox pattern for reliable async message delivery. You queue messages with SQL like `ulak.send('webhook', '{"event": "order.created"}')` inside transactions, ensuring atomic commits, while background workers deliver to HTTP, Kafka, MQTT, Redis, AMQP, or NATS with retries, circuit breakers, and dead letter queues. Built in C like postgresql extensions postgis or timescaledb, it includes Docker Compose for instant setup with all brokers.

Why is it gaining traction?

It solves the dual-write problem natively in Postgres—no polling loops or external CDC tools—delivering exactly-once writes and at-least-once semantics via simple SQL APIs. Standout user features include pub/sub fan-out, priority/scheduled delivery, idempotency keys, CloudEvents, and monitoring views like `ulak.health_check()`. Devs grab it for the wiki docs, github postgresql docker quickstart, and reliability matching mature postgresql extensions like timescaledb.

Who should use this?

Postgres backend devs building event-driven apps or microservices with webhooks, Kafka topics, or MQTT brokers, tired of unreliable app-level retries. Suited for teams using terraform postgresql extension deploys or needing outbox for order processing, user events, or IoT telemetry without added infra.

Verdict

Promising v0.0.2 Apache-licensed github repo at 11 stars and 1.0% credibility—early but battle-tested with regression/isolation tests and full wiki. Fire up docker compose for eval if Postgres outbox fits; skip for prod until more adoption.

(198 words)

Sign up to read the full AI review Sign Up Free

Similar repos coming soon.