Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/etaque/tacks

Real-time multiplayer sailing game, in your browser
https://github.com/etaque/tacks

actors akka elm game websockets

Last synced: 15 days ago
JSON representation

Real-time multiplayer sailing game, in your browser

Awesome Lists containing this project

README

        

# [Tacks](http://www.playtacks.com)

A sailing race simulator, multiplayer & real-time, in you browser.

Server app is powered by Scala 2.11 with Play 2.3, Slick 3, Akka for websockets orchestrations and uses PostgreSQL for database. No classes except actors, code is written in a functional style.

Game client is an [Elm](http://elm-lang.org/) app, an statically-typed functional language that compiles to Javascript.

## Architecture

Server area:

- Players sync
- Race management

Done withing Akka actors, communicating with the client through Websockets and JSON API. No rendering from the server.

Client area:

- Single Page App
- Game rendering (SVG)
- Game logic (input handling, player moves, etc)

## How to install

Server (Play app):

- download and install [Typesafe Activator](https://typesafe.com/activator)
- start app with `activator run`

Client (Elm app with JS boot and SASS stylesheets):

- `cd client`
- `npm install`
- `npm start`