Nakama is a free and open-source (Apache-2.0 Licensed) distributed chat server for building real-time chat applications for games and social apps.

With it developers can build scalable games and apps with a production ready server used by ambitious game studios and app developers all around the world. Take a look at the documentation and join the developer community for more info.

Features

  • Users - Register/login new users via social networks, email, or device ID.
  • Storage - Store user records, settings, and other objects in collections.
  • Social - Users can connect with friends, and join groups. Builtin social graph to see how users can be connected.
  • Chat - 1-on-1, group, and global chat between users. Persist messages for chat history.
  • Multiplayer - Realtime, or turn-based active and passive multiplayer.
  • Leaderboards - Dynamic, seasonal, get top members, or members around a user. Have as many as you need.
  • Tournaments - Invite players to compete together over prizes. Link many together to create leagues.
  • Parties - Add team play to a game. Users can form a party and communicate with party members.
  • Purchase Validation - Validate in-app purchases and subscriptions.
  • In-App Notifications - Send messages and notifications to connected client sockets.
  • Runtime code - Extend the server with custom logic written in Lua, TypeScript/JavaScript, or native Go code.
  • Matchmaker, dashboard, metrics, and more.

Tech

  • Go lang
  • Lua

License

  • Apache 2.0 License

Resources

GitHub - heroiclabs/nakama: Distributed server for social and realtime games and apps.
Distributed server for social and realtime games and apps. - GitHub - heroiclabs/nakama: Distributed server for social and realtime games and apps.