Board Master
Head to head competitive typing test featuring words per minute and accuracy scoring, built on Express.js and Socket.io
The Process
Inspired by typings.gg, this optimized typing-skill application is loaded with features. I went into this application with the idea of creating a head-to-head typing application to challenge yourself and others. Once I started the coding phase, many ideas started popping out at me to build such as a lobby system and chat capabilities. Other features I am proud of are the lobby options, scoring system, and practice lobbies while you wait around in the challenge lobby. When a player joins a lobby in a room, the player can choose the amount of words and with the max word length that the challenge will render. The scoring system calculates your accuracy and words per minute; corrected and uncorrected errors are accounted for in the scoring calculation algorithm.
I chose to write both the client and server in TypeScript which taught me an incredible amount about TypeScript. This presented me with a good opportunity to work with TypeScript namespaces and classes as well as Node.js design concepts which I dont normally work with in the React Ecosystem.
Take Aways
- Expanded my knowledge of OOP techniques and architecture
- Developed extensive experience with Socket.io API
- Became more knowledgeable with real-time client to server communication
Technology stack
- TypeScript
- React
- Express.js
- Socket.io
- SASS