Simpl Platform

Standard Simpl Framework

The simpl-games-api is required to run one or more games. For each game, a model service and user interface (UI) will need to be created.

simpl-games-api

A single instance of simpl-games-api provides a database and REST API endpoints for one more more games. When data is changed, an event is sent to the registered game model service via an HTTP Webhook.

Game Model Service

For each game, a model service must be created that provides communication between the simpl-games-api and UI.

Game UI

For each game, a browser-based user UI must be created that communicates with the game model service. We recommend using simpl-ui-cookiecutter and simpl-react.

Creating a Game

Use simpl-ui-cookiecutter and simpl-react to create a frontend. Choose from single of multi-player.

simpl-ui-cookiecutter

Built based on the popular cookiecutter library, a quickstart template to create a game UI

simpl-react

An npm module that provides support for building frontend UIs with React and Redux

Single or Multi-Player

Simpl includes support for single or multi-player games

Under the Hood

Important Simpl packages that run in the background

simpl-client

A Python client that provides asynchronous or synchronous data access between the simpl-modelservice and simpl-games-api

simpl-modelservice

simpl-modelservice provides services common to all games, including maintaining a game's model data, making REST API calls to the simpl-games-api, and providing user data to the game user UI.

simpl-authenticator

A Web Application Messaging Protocol (WAMP) authenticator

simpl-users

A custom Django User model tailored to Simpl's needs

Ways to Use Simpl

As the Simpl ecosystem grows, options for using Simpl will grow

  • Create a game
  • Host a game
  • Use a game created by someone else