finds.dev← search

// the find

zpl-c/librg

★ 1,482 · C · BSD-3-Clause · updated Jan 2026

🚀 Making multi-player gamedev simpler since 2017

librg is a single-header C99 middleware for spatial entity replication in multiplayer games. It handles area-of-interest management and world synchronization, but deliberately leaves networking and serialization to other libraries. Aimed at game developers who want visibility-based entity sync without being locked into a specific network transport.

The area-of-interest chunk system is the core value: entities are only replicated to clients that can actually see them, which is the right architectural answer for any non-trivial multiplayer game. Transport-agnostic design is genuinely well-executed — the interface requires only send/receive buffer and a client integer ID, so it works with ENet, GameNetworkingSockets, KCP, or raw UDP without modification. Single-header distribution means integration is a file copy, no build system changes required. The binary protocol diagram shows a well-thought-out per-entity custom data slot, which avoids the usual problem of replication systems that force you into their serialization format.

Last release activity suggests the project is in maintenance mode at best — 44 forks on a 9-year-old networking library is a signal the community never grew around it. No built-in serialization or networking means you're assembling three separate libraries before you have a working prototype, which is a real integration tax. The chunk-based spatial partitioning is fixed-grid and statically sized; dynamic worlds or non-uniform entity density will need workarounds since there's no adaptive spatial structure. Documentation lives in a separate docsify site and the quickstart is thin — anyone past the basic examples will be reading source and inferring behavior.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →