A lightweight, high-performance Go framework for building real-time game servers and distributed systems.
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.
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.
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.
Lightweight, facility, high performance golang based game server framework
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.
Provides ready-made solutions for creating distributed game servers, enabling scalable multi-server deployments without custom clustering code, demonstrated in the cluster chat demo.
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.
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.
The README explicitly notes that Lua integration documentation is incomplete, which may hinder developers needing scripting support for game logic.
Requires manual installation of multiple dependencies like Protocol Buffers, gRPC, and specific tools, adding to initial setup time and potential maintenance overhead.
Designed primarily for game servers, making it less versatile for general-purpose real-time applications outside gaming, with limited examples for other use cases.
A dead simple 2D game engine for Go
A game server framework in Go (golang)
Go 3D Game Engine (http://g3n.rocks)
Scalable game server framework with clustering support and client libraries for iOS, Android, Unity and others through the C SDK.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.