Fonsole is a platform that offers a series of multiplayer party games where the smartphone is the controller. Games are similar to board games, party games, card games and other social games that people typically play at gatherings/parties. Games will be mostly turn-based, or asynchronous games. Real time games will not be offered (initially). THE unique feature of this platform, is that players use their phones to control the games that will be displayed on a big screen (laptop or TV screen), via a simple website that they can access through their smart phone's web browser. The platform will provide the tools the infrastructure for devs to easily create additional games.
- Vue.js
- Electron
- socket.io
-
Download Repo Manually or Clone it (Recommended)
-
Make sure to have NPM (node package manager) installed on your system and its version greater than or equal to 3.0.0.
-
Open cmd.exe with admin privileges, browse to repo folder, and run the following command
npm install [email protected] -g
-
Install dependencies:
npm install
-
Launch electron with "hot reload" at localhost:8080
npm run dev
-
Launch webpack-dev-server with "hot reload" at localhost:8080
npm run dev:web
-
Build binaries, checkout
package.json
for all possible targetsnpm run build:win32
-
Run ESlint to fix possible style errors
npm run lint-fix
For detailed explanation on how things work, checkout the guide and docs for vue-loader.
Main repo, this is the desktop version of the game (bigscreen), it is the main view that all the players will see for the games, typically on a large monitor/tv, uses electron.
Dependencies:
This is the public API that developers can explore to see how to develop games for fonsole.
This is the server component of fonsole. It will eventually be made private.
Dependencies:
This is a socket.io-based component, that inclueds both client and server files. This repository most likely also will be private.
- Server is located in
networking.js
file and is exported by default. Contains everything that is releated to rooms and working with client connections. - Client part is located in
client
directory. Has everything that can be used for communication with server part. Also has aexport
that returns object with functions, that can be used by Public API.