Build a very simple multiuser web app with a back-end powered by Node.js and Express and communication powered by Socket.IO.
Node, Express, Socket.IO, Heroku
Afterclass Live-Code, Multiuser Webpage
February 22, 2019
In this afterclass Live-Code I built a very simple multiuser web app with a back-end powered by node.js and express.js and communication powered by socket.io. The webpage tracks and shared the postion of each user’s mouse. The actual code from class is not available online, but a cleaned up version is on github.
Final Product: https://multiuserpage.herokuapp.com/
Source Code: https://github.com/jbakse/multi_user_page
Basic Client-Server App Architecture
What information needs to be shared?
When building a multi-user webpage, decide what information should be shared from the server and what information will be handled on the client side.
How should that information be communicated?
This project uses Socket.IO for server-client communication.
How much should the application trust the client?
More complex games must keep user input and game world information coordinated on the server side, so that all players’ experiences are coordinated. However, server-side information is slower to display, creating more lag for players.
When designing your game’s architecture, it’s important to balance information coordination, timing, and user experience.
Setting up a Node.js Project
Building a simple static web server with Express.js
Fitting the pieces together and debugging with
This project uses many different elements to construct a webpage. Building thing little by little, testing as you go. Be prepared for backtracking, debugging, and restructuring as you develop the project.
Relaunches a Node application when source is changed.
Platform as a Service application host.
Library for socket communication.
Popular Node.js library for building a web server.