Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Go
  3. nano

nano

MITGov0.5.1

A lightweight, high-performance Go framework for building real-time game servers and distributed systems.

GitHubGitHub
3.2k stars463 forks0 contributors

What is nano?

Nano is a lightweight, high-performance game server framework built in Go, designed to simplify the development of real-time multiplayer applications. It provides a core network architecture and a suite of tools that help developers eliminate repetitive networking code, allowing them to focus on game logic and business rules. The framework supports distributed systems, making it suitable for scalable game server deployments.

Target Audience

Backend developers and engineers building real-time game servers, social games, mobile games, or any distributed multiplayer application in Go. It is particularly useful for teams needing a performant and scalable networking foundation without reinventing the wheel.

Value Proposition

Developers choose Nano for its simplicity, performance, and built-in support for distributed systems, which reduces development time for common networking tasks. Its component-based architecture and cross-platform client libraries provide flexibility and ease of integration compared to building custom solutions from scratch.

Overview

Lightweight, facility, high performance golang based game server framework

Use Cases

Best For

  • Building real-time multiplayer game servers in Go
  • Creating scalable distributed systems for online games
  • Developing social or mobile games with WebSocket communication
  • Prototyping game servers quickly with a lightweight framework
  • Integrating Lua scripting into game server components
  • Implementing chat rooms or real-time collaboration features

Not Ideal For

  • Projects not using Go or requiring polyglot microservices across different server languages
  • Simple applications where lightweight HTTP/REST APIs suffice without real-time networking needs
  • Teams seeking pre-built game mechanics, physics engines, or extensive out-of-the-box game logic libraries
  • Environments with strict dependency minimization policies due to Nano's reliance on Protocol Buffers, gRPC, and other external tools

Pros & Cons

Pros

Component-Based Architecture

Allows building applications as collections of components with handlers, simplifying code organization and reuse, as illustrated in the 'How to build a system with Nano' section and accompanying diagram.

Built-In Distributed Support

Provides ready-made solutions for creating distributed game servers, enabling scalable multi-server deployments without custom clustering code, demonstrated in the cluster chat demo.

Efficient Async Handling

Supports running slow tasks like database queries in goroutines and handling results in the main logic thread using nano.Invoke, with a clear code example in the asynchronous task section.

Cross-Platform Client Libraries

Offers client libraries for JavaScript, TypeScript, and game engines like Egret and Cocos Creator, facilitating integration with various frontends, as listed in the Resources section.

Cons

Incomplete Documentation

The README explicitly notes that Lua integration documentation is incomplete, which may hinder developers needing scripting support for game logic.

Complex Dependency Setup

Requires manual installation of multiple dependencies like Protocol Buffers, gRPC, and specific tools, adding to initial setup time and potential maintenance overhead.

Niche Game Server Focus

Designed primarily for game servers, making it less versatile for general-purpose real-time applications outside gaming, with limited examples for other use cases.

Frequently Asked Questions

Quick Stats

Stars3,187
Forks463
Contributors0
Open Issues29
Last commit1 month ago
CreatedSince 2017

Tags

#multiplayer#websocket-server#game-server#tcp-server#distributed-systems#server#lightweight#websocket#micro#protocol-buffers#game#golang#microservices#json#real-time#backend-framework#protobuf#networking

Built With

W
WebSocket
P
Protocol Buffers
G
Go
g
gRPC

Included in

Go169.1k
Auto-fetched 1 day ago

Related Projects

EbitengineEbitengine

A dead simple 2D game engine for Go

Stars13,118
Forks762
Last commit2 days ago
LeafLeaf

A game server framework in Go (golang)

Stars5,500
Forks1,332
Last commit1 year ago
G3NG3N

Go 3D Game Engine (http://g3n.rocks)

Stars3,079
Forks312
Last commit25 days ago
PitayaPitaya

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

Stars2,767
Forks536
Last commit16 days ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub