Simul.Games

Simul.games

Simul Games is a free online party game server focused on realtime, varied, gameplay and ease of use across all devices.

Simul.Games


Simul Games is a free online party game server focused on varied, online, realtime, gameplay and ease of use across all devices.

Simul.Games' server is written in Go and using goroutines for a concurrent scalable program. It makes use of WebSockets for reliable, quick, communication between clients. In development is a hybrid Rest API / Websocket approach.

The Web Client is styled with Tailwind CSS and written in TypeScript using the Svelte Framework. Both front and back end can be easily proxied by Caddy or Nginx webservers (when deployed using Sveltekit's static site adapter.)

Development

By default, will open ports 3000 & 8080 on localhost; you can change this in config.yaml. Svelte Webkit, which uses Vite, supports hot-reloading in development, so it will rarely need to be relaunched, but Go will need to be recompiled for changes to be shown.

Setup

Requires Go 1.18+ & Node 16.9+

If you are using Windows (this step is not required on Linux or Mac), you will additionally need to instruct npm to use a terminal emulator that can run *NIX shell scripts. For example, with Git Bash,

npm config set script-shell 'C:\Program Files\Git\bin\bash.exe'

Commands

Start Webclient

cd webclient && npm run dev

Run Webclient Tests

cd webclient && npm test

Start Server

cd server && go run main.go

Run Server Tests

cd server && go test ./... -coverpkg=./... -timeout 100ms -race

License

Simul.Games is licensed under the GNU Affero General Public License 3.

Credits

Top categories

svelte logo

Want a Svelte site built?

Hire a Svelte developer
Loading Svelte Themes