~/jstites$
2026

# godotnet

A Go networking library for Godot 4. Write the client in Godot, run the server in Go.

role
solo
stack
GoGodot
repo
github.com/jordanstites/godotnet

## Why

Godot's built-in multiplayer is decent but it's kind of limited. It really only works well if your server is also Godot, and it's tied to the node system. I wanted to write the client in Godot but run a real Go server for the backend. Go is way better for backends. Concurrency, tooling, all that.

So I started this library to be the network layer between Godot clients and a Go server.

## What it does

It handles the boring network stuff so you can focus on the game. Sockets, reconnection, framing, sessions, dispatching messages to handlers, a tick loop, all that. It does not do game logic, that's up to you.

## The client

There's a companion plugin called godotnet-client. It's an autoload you drop into your Godot project and it handles the interface to the server. Makes the Godot side really simple.

## Status

v0.1.3 is out. Basic connection works and you can transport events between Godot and the server. Working on demos for the client right now. Plenty more to add, but the foundation is there.

## devlog(1 entry)

  1. v0.1.3 and a companion client plugin

    v0.1.3 of godotnet is out. Basic connection works and you can transport events between Godot and the server.

    There's also a companion plugin now called godotnet-client. It's a Godot autoload you drop into your project to interface with the server. Makes the Godot side really simple.

    Currently working on demos to show it in action.