![garuda logo](assets/garuda_title.png?raw=true  "title")

# Garuda

> ### A multiplayer game server framework for phoenix.

> Build and run game servers intuitively.


![Garuda CI](

Garuda is an Authoritative Multiplayer Game Server for [Phoenix framework](


The project focuses on providing a *game framework system*, *matchmaking*, *real-time game-session monitoring system* and ease of usage both on server-side and client-side, by leveraging the powerful phoenix framework.


The goal of the framework is to be have a standard framework & matchmaking solution for all type of games. BEAM directly maps the use cases of a typical game server. So Let's build and run game servers, in a much more intuitive way.

### :warning:  This project is in alpha.

Current feature list.

- WebSocket-based communication (Will support more transports layer in future, thanks to phoenix)

- Simple API in the server-side and client-side.

- Game specific module behaviours.

- Matchmaking clients into game sessions.

- Realtime interactive game session monitoring.


### Realtime monitoring


### Client Side Support.

Garuda ships with a javascript client [garudajs](, which allows easy communication with the server (This also leverages [phoenixjs](


## Installation


def  deps  do
    {:garuda, "~> 0.2.0"}


## Demo

A multiplayer Bingo game is developed, to showcase the Garuda. [try the game](

Bingo client [source code](

Dingo (bingo server, using Garuda) [source code](

## Documentation

The docs can be found at [](

## Collaborators

[ghostdsb](, [Brotchu](