Dante Nardo

Protean App

Protean is a free tool for sending messages and rolling dice with friends. I created it primarily for playing roleplaying games online.


This image depicts the protean web app where you can send and view messages.
A markdown message and dice roll sent on Protean

No sign up. No worries.

Many free web apps require authentication and impose storage limits, but I found that unwarranted for this project. Protean app has no authentication and no data is saved or cached. Rooms are transient and live as long as users are connected to them. When a new user joins, the server requests the current room’s state from an existing user and sends it to the new user. Once every user leaves, the room and its data disappears forever.

Spin up a new room and try it out now

Technical Details

  • Web app built using Sveltekit
  • Web socket server built using Node, Express, and Socket.IO
  • Messages support Markdown and are sanitized on the client and server
  • Interactive components built with Svelte, TypeScript, and Tailwind CSS
  • Web app deployed to Vercel via GitHub CI/CD
  • Web socket server deployed to Railway via GitHub CI/CD

Source

Front end web app

Back end websocket server