frontpage.
newsnewestaskshowjobs

Open Source @Github

fp.

Open in hackernews

Show HN: ReJot – Database replication framework aimed at developers

https://github.com/rejot-dev/rejot
9•WilcoKruijer•1y ago
Hi Hacker News! We're Jan & Wilco from ReJot (https://rejot.dev). With ReJot we're building a framework that turns the write-ahead log of your database into an asynchronous communication channel for your services. ReJot enables application developers to define how the database tables they own should be replicated to other databases. Something we wish we had at in our previous job at a large fintech.

There is a gap between building internal (REST) APIs and Kafka (event streaming) to share data between services.

Internal APIs start to break down when you have more than a couple services communicating. Their synchronous nature makes them brittle in a distributed system: failures cascade and latency adds up. Companies operating internal APIs at scale often face challenges like managing implicit schemas and versioning. They also need to write significant amounts of code to implement features like circuit breakers and internal load balancing.

Event streaming addresses these issues by using asynchronous communication, but it also introduces significant drawbacks. Kafka is known for its operational complexity and high cost. Engineers must manage outbox tables, outbox processors, and consumers, which makes the system more difficult to understand and maintain.

ReJot is the middle ground solution that re-uses a database system's write-ahead log as an asynchronous communication channel. The WAL is well-suited to double as an outbox, this has been proven by CDC systems like Debezium. ReJot is a lightweight addition to existing infrastructure, and even re-uses existing (relational) database systems to store messages (temporarily) before sending them to the destination/sink databases.

We're developer focused, as opposed to being infrastructure focused. Much like how developers define the database table schemas they use, we enable developers to say how their data should be published to others in the distributed system. This is done through something we call "Public Schemas", they consist of a schema and a (SQL) query. When an item in the underlying table changes, the query is executed to produce an object conforming to the schema. This data is then forwarded through ReJot, ready to be consumed by a different service using a "Consumer Schema". This is again a simple (SQL) query that contains an INSERT statement. All of this is defined from within the codebase of the application, much like how ORMs or query builders work.

In short, ReJot re-uses your database in two ways: by consuming the WAL, and also by using queries to encapsulate and integrate data. This makes ReJot a good middle-ground between the brittleness of synchronous communication and the complexity of event streaming.

Excited to hear what you think!

Comments

raoulritter•1y ago
I'm thinking that now with all these agent to agent frameworks this could potentially work for that. If you send off one agent you want them to keep up to date and sync / talk to each-other. Could your solution work for something like A2A by google or similar to enhance the synchronization across the different agents doing their tasks and prevent them from landing in a loop or similar.
WilcoKruijer•1y ago
I'm not too familiar with how people store the state of AI agents, but I do think there's some opportunity to use ReJot for this use case. Hooking up an agent to ReJot and giving them access to all available Public Schemas could be an interesting way of letting an agent explore and use the data in a distributed system.
jasonthorsness•1y ago
If the consumers stall, doesn't the WAL have to grow in unbounded fashion? Does it place any backpressure on the writers?
WilcoKruijer•1y ago
You're right. Since we don't want to put too much pressure on the source database, we do save the (transformed) WAL items in an intermediary database (we call this the event store), so the source can clear its WAL.

This does mean the intermediary database can grow in an unbounded fashion. The use case really determines if this is fine or not. Since our focus right now is on (micro)service communication, we think this is fine in most cases, as the throughput usually is not gigantic.

Since the event store is just a Postgres database, it's easy to set up partitions to only retain data for a certain amount of time. On the near-term roadmap we also have back-fill support which will make it easier to work with shorter retention windows.

Interactive 3D Dice Roller with Custom Physics and Shaders

https://ttrpg.dies.kmcprizmquest.dev/
1•Radversalo•6m ago•0 comments

How to be useful as a software architect

https://swizec.com/blog/how-to-be-useful-as-a-software-architect
1•meetpateltech•8m ago•0 comments

Elevated Errors for Opus 5

https://status.claude.com/incidents/zftg3gqkmv18
1•TimCTRL•9m ago•0 comments

I built a jav data API, need honest feedback

1•javinfo•11m ago•0 comments

Show HN: OpenStrap – use a WHOOP 4.0 band without a subscription

https://openstrap.github.io/edge/
1•abdulsaheel123•16m ago•0 comments

Show HN: Tawrida – Global Trade Tools – Export-Document Generators

https://tawrida.xyz/tools
2•m-zakarya•19m ago•0 comments

Anthropic should learn from those cotton-picking socialists

https://asteriskmag.com/issues/15/rust-and-boll
1•maxall4•21m ago•0 comments

Practice your YC interview against Garry Tan's gstack specialists, on a meeting [video]

https://www.youtube.com/watch?v=PMiIytmoEuk
3•anand_pattern•22m ago•1 comments

High Volume Transaction Processing Without Concurrency Control (1997)

https://www.researchgate.net/publication/2310700_High_Volume_Transaction_Processing_Without_Concu...
1•tosh•22m ago•0 comments

Ruff v0.16.0 – Significant new updates – 413 default rules up from 59

https://astral.sh/blog/ruff-v0.16.0
1•vismit2000•26m ago•0 comments

Build a self-scaling OCR pipeline with Qwen 3.5 and Kubernetes

https://github.com/neural-maze/production-ocr-course
1•mtrofficus•40m ago•0 comments

Claude Code has a hardcoded instruction telling Opus 5 not to use subagents

https://old.reddit.com/r/ClaudeCode/comments/1v6y5q2/claude_code_has_a_hardcoded_instruction_tell...
2•bredren•43m ago•0 comments

The most capable resume editor I could build, as a solo dev

https://www.roleframe.ai/product/ai-resume-builder
1•larbisahli•45m ago•0 comments

The diminishing returns of productivity culture (2021)

https://annehelen.substack.com/p/the-diminishing-returns-of-productivity
3•downbad_•57m ago•0 comments

Show HN: Reproducibility Benchmark a Risk Quantitative Model

https://github.com/Fluxara-GOD/fluxara1-audit-verification-pack
2•mingshi_tz•59m ago•0 comments

What will more intelligence do for us?

https://www.noahpinion.blog/p/what-will-more-intelligence-actually
2•jinjin2•59m ago•0 comments

HomeLab #2: Immutable GitOps homelab and MikroTik hardening

https://justsomebody.dev/blog/gitops-k3s-flux
1•rafal_opilowski•1h ago•1 comments

If you feel the need to tell me your answer is AI-based, work it more

https://cephalosec.com/blog/the-hidden-cost-of-ai-is-someone-elses-time/
1•Versipelle•1h ago•0 comments

The Context Bootloader

https://adlrocha.substack.com/p/adlrocha-the-context-bootloader
1•adlrocha•1h ago•0 comments

House AI 'kill switch' bill unveiled as OpenAI hack raises alarms

https://www.politico.com/news/2026/07/23/house-ai-kill-switch-bill-unveiled-as-openai-hack-raises...
1•reasonableklout•1h ago•0 comments

Modeling Facts and Reactions with Domain Events

https://deniskyashif.com/2026/07/25/modeling-facts-and-reactions-with-domain-events/
1•deniskyashif•1h ago•1 comments

Anthropic secures its AI-native software development lifecycle

https://claude.com/blog/how-anthropic-secures-its-ai-native-software-development-lifecycle
3•_tk_•1h ago•0 comments

Visaism (Part 1): India as a Waiting Room

https://twitter.com/samyak128/status/2079837839798260154
1•barry-cotter•1h ago•0 comments

Fallback Font

https://en.wikipedia.org/wiki/Fallback_font
1•pndy•1h ago•0 comments

Yann LeCun's Bet That Intelligence Starts in the World

https://aryeian.blog/articles/jepa-world-models.html
1•plun9•1h ago•0 comments

Teach Yourself Programming in Ten Years (1998)

https://www.norvig.com/21-days.html
2•vinhnx•1h ago•0 comments

YouTube Comments in .csv

1•cristyg0101•1h ago•0 comments

A protocol for AI agent workspace state and effect management

https://github.com/eouzoe/reel
1•eouzoe•1h ago•0 comments

Reth ExEx spawn_critical_task terminates node on any plugin panic

https://github.com/paradigmxyz/reth/security/advisories/GHSA-whc8-8pf6-5ch6
1•eouzoe•1h ago•0 comments

Claude Code Cut Their System Prompt by 80%. Does That Work for Small Models Too?

https://antigma.ai/blog/2026/07/25/short-prompt-small-models
2•ubermon•1h ago•1 comments