Inspiration
Many people, especially kids and teens, don't have the personal finance knowledge they need. One solution to the problem of financial education is traditional classwork, workshops, and online education. We wanted to find a fun way to encourage people to learn about personal finance.
What it does
FinanceViper is a online, multiplayer implementation of the classic Snake game that aims to "gamify" learning and engage learners who otherwise wouldn't be exposed to financial education.
How we built it
The game state is fully maintained on our Node.js server and pushed to clients via websockets. The frontend is written in Svelte, an up-and-coming lightweight UI framework.
Challenges we ran into
We ran into some issues with WiFi latency and drops that would disconnect clients and/or cause lag in the game for players. Properly handling collisions between players and getting the live leaderboard working were also technical challenges. Finally, robustness in the server code was an issue, as we originally used regular JavaScript instead of TypeScript and had numerous soundness issues.
Accomplishments that we're proud of
We implemented delta updates to reduce pressure on the network and improve performance of the game. We also are proud to have built a game that was entertaining enough to distract us from our work numerous times!
What we learned
Start with TypeScript for any major JavaScript project; minimize how much data you send over a websocket.
What's next for FinanceViper
- Mobile
- UI enhancements
- Better accessibility
- Adding computer vision so users can create their own maps
- Adding AIs so game is always populated
Built With
- azure
- css3
- domain.com
- git
- github
- html5
- javascript
- node.js
- svelte
- tailwindcss
- twilio
- typescript
- websockets




Log in or sign up for Devpost to join the conversation.