Game Development

27 projects

Go game development splits into two areas: client-side engines and bindings for drawing, input and audio, and server frameworks for multiplayer games, where Go's networking and concurrency are a natural fit. Most client engines target 2D, and several projects here are bindings to established C libraries rather than pure Go engines.

Ebitengine is the most established Go game engine; it focuses on 2D, runs on desktop, mobile, web and some consoles, and has shipped commercial games. raylib-go and go-sdl2 bind the raylib and SDL2 C libraries, so they need cgo but give access to mature APIs. g3n is a 3D engine, engo uses an entity-component-system design, Oak is a pure Go engine, and Pixel continues under the gopxl organization. termloop builds games in the terminal. For servers, Pitaya supports clustering and client libraries, Leaf and nano are lightweight frameworks, goworld offers hot-swapping and due provides distributed components. go-astar implements A* pathfinding.

For a 2D game you want to ship, Ebitengine is the safest choice because of its documentation, platform reach and active maintenance. Choose raylib-go if you already know raylib or want simple 3D. On the server side, pick a framework whose transport and clustering model match your game, or build on plain WebSockets or UDP for small projects.

Ebitengineby hajimehoshi

Dead simple 2D game engine in Go.

github.com/hajimehoshi/ebiten/v2Go 1.26+ 19 dependenciesv2.10.5updated today

13.6k

Leafby name5566

Lightweight game server framework.

1.1.3updated 2y ago

5.5k

nanoby lonng

Lightweight, facility, high performance golang based game server framework.

github.com/lonng/nanoGo 1.12+ No dependencies v0.5.1updated 8mo ago

3.2k

g3n

Go 3D Game Engine.

github.com/g3n/engineGo 1.13+ 4 dependenciesv0.2.0updated 3mo ago

3.1k

Pitayaby topfreegames

Scalable game server framework with clustering support and client libraries for iOS, Android, Unity and others through the C SDK.

github.com/topfreegames/pitaya/v3Go 1.25+ 32 dependenciesv2.11.24updated 7d ago

2.8k

goworldby xiaonanln

Scalable game server engine, featuring space-entity framework and hot-swapping.

github.com/xiaonanln/goworldGo 1.17+ 22 dependenciesupdated 11mo ago

2.7k

raylib-goby gen2brain

Go bindings for raylib, a simple and easy-to-use library to learn videogames programming.

updated 2mo ago

2.6k

go-sdl2by veandco

Go bindings for the Simple DirectMedia Layer.

github.com/veandco/go-sdl2Go 1.15+ No dependencies v0.4.0updated 1y ago

2.3k

engoby EngoEngine

Engo is an open-source 2D game engine written in Go. It follows the Entity-Component-System paradigm.

github.com/EngoEngine/engoGo 1.19+ 19 dependenciesv1.0.8updated 7mo ago

1.8k

Oakby oakmound

Pure Go game engine.

github.com/oakmound/oak/v4Go 1.26+ 18 dependenciesv4.1.1updated 2mo ago

1.7k

termloopby JoelOtter

Terminal-based game engine for Go, built on top of Termbox.

updated 2y ago

1.5k

gonetby xtaci

Game server skeleton implemented with golang.

archived

1.3k

dueby dobyte

Distributed game server framework with a modular component design, providing tcp, kcp, ws and quic gateways.

github.com/dobyte/due/v2Go 1.27+ 14 dependenciesv2.6.5updated today

981

go-astarby beefsack

Go implementation of the A* path finding algorithm.

updated 4y ago

629

gogpu

GPU application framework with windowing, input, and rendering built on WebGPU — reduces 480+ lines of GPU code to ~20, zero CGO (GoGPU ecosystem: gg, ui, wgpu, naga).

github.com/gogpu/gogpuGo 1.25+ 5 dependenciesv0.54.0updated 1mo ago

429

Pixelby gopxl

Hand-crafted 2D game library in Go.

github.com/gopxl/pixel/v2Go 1.21+ 10 dependenciesv2.3.0updated 1y ago

393

go3dby ungerik

Performance oriented 2D/3D math package for Go.

github.com/ungerik/go3dGo 1.23+ 1 dependencyupdated 1y ago

344

Arkby mlange-42

Archetype-based Entity Component System (ECS) for Go.

github.com/mlange-42/arkGo 1.24+ No dependencies v0.8.3updated today

305

tileby kelindar

Data-oriented and cache-friendly 2D Grid library (TileMap), includes pathfinding, observers and import/export.

github.com/kelindar/tileGo 1.25+ 3 dependenciesv1.7.0updated 1y ago

226

gogpu/wgpuby gogpu

Pure Go WebGPU implementation with Vulkan, DX12, and Metal backends, zero CGO (part of GoGPU ecosystem).

github.com/gogpu/wgpuGo 1.25+ 6 dependenciesv0.34.6updated today

197

ecsby andygeiss

Build your own Game-Engine based on the Entity Component System concept in Golang.

github.com/andygeiss/ecsGo 1.27+ No dependencies v0.4.1updated 1mo ago

177

prototypeby gonutz

Cross-platform (Windows/Linux/Mac) library for creating desktop games using a minimal API.

github.com/gonutz/prototypeGo 1.16+ 5 dependenciesupdated 1y ago

109

GOKeby kjkrol

Data-Oriented (DOD), archetype-based ECS engine utilizing an L1 cache-aligned chunked SoA layout for predictable, stepless memory growth and zero-allocation execution paths.

github.com/kjkrol/goke/v3Go 1.27+ 2 dependenciesv3.4.0updated 12d ago

94

Piby elgopher

Game engine for creating retro games for modern computers. Inspired by Pico-8 and powered by Ebitengine.

github.com/elgopher/piGo 1.25+ 3 dependenciesupdated 21d ago

71

fantasynameby s0rg

Fantasy names generator.

github.com/s0rg/fantasynameGo 1.25+ 1 dependencyupdated 1y ago

44

gridby s0rg

Generic 2D grid with ray-casting, shadow-casting and path finding.

github.com/s0rg/gridGo 1.25+ 4 dependenciesupdated 10mo ago

27

sceneCameraby donomii

Camera movement and view/projection matrices for museum, FPS, RTS, and stereo rendering modes.

github.com/donomii/sceneCameraGo 1.24+ 4 dependenciesv1.0.1updated 3mo ago

4
Esc

Type to search every entry. ↑↓ to move, Enter to open.