Project Turnip

A match event tracker for Smash Bros. Melee, which displays combo strings and final results. Built on top of the open source Slippi SDK.

TECH

NodeJS
Electron

Details

Project Turnip is a tool that breaks down the actions that took place inside a Super Smash Bros. Melee match. It utilizes the Project Slippi JavaScript SDK that retrieves data from a saved binary event file. These files are produced from forked Dolphin Emulator clients or hacked Melee ISO's produced by Project Slippi.

Using NodeJS the tool can read the user's file system for the match event files. Combining NodeJS with Electron, the tool can run on a user's desktop using a highly customizable UI built with HTML, CSS and JavaScript to report data to a user.

Lessons Learned

Before having ever used Electron, my experience with desktop development revolved around using either JavaFX or WinForms as the framework to construct UI's. The benefits of those frameworks were the drag and drop workflows that made development easy as well as fast. The trade-off of the ease of use and speed was that you were forced into static interfaces with a lack of real customization.

Electron is a framework that can fulfill your needs for responsive UI and customization. It enables you not just to build for desktop but as well use your code from web applications. What could of speed up the development process of this project would on been to use React and implement a UI framework such as Material UI for premade components. Through using the themes feature I could have accomplished the same design but in a fraction of the time.