NetKit - Networking primitives for s&box. Every common multiplayer networking task in one line.

What's included:

NetRequest - Async request/response over RPCs. Client awaits a typed response from the host. No more fire-and-forget.
NetChannel - Typed event bus. Push events to specific clients or broadcast to all. No more JSON + FilterInclude ceremony.
NetCooldown - Shared per-player cooldowns with client-side countdown. No more per-feature TimeSince fields.
NetTransaction - Optimistic client prediction. Apply changes instantly, rollback if the host rejects.
NetState<T> - Replicated state machines. Synced enum with transition events, timing, and previous-state tracking.
NetVisibility - Declarative network visibility. Distance-based, owner-only, or custom filter. Drop the component and configure.

Why NetKit?

s&box gives you the building blocks: RPCs, Sync, NetList. But every time I made something new, I had to rebuild the same patterns on top: request/response, event broadcasting, cooldowns, rate limiting. NetKit is the missing layer. Drop it in, make your life easier.

Quick example:

Register a handler on the host:
NetRequest.Handle<BuyReq, BuyRes>((caller, req) => new BuyRes { Success = true });

Client sends and awaits:
var res = await NetRequest.Ask<BuyReq, BuyRes>(new BuyReq { ItemId = "sword" });

No boilerplate RPCs. No JSON serialization. No request ID management. Typed, async, one line.

Support: Discord - callowayisweird
Source: github.com/CallowayIsWeird/netkit