James Plante

Projects

Here are a few projects I have worked on and am working on. To see more past and current projects, please feel free to click on the GitHub logo at the top of the page!

Language Explorer Website

Developed a novel website in a two-person group that allows users to explore languages in the Austroasiatic language family through a hand-compiled dataset. The frontend was developed in TypeScript and JavaScript with the React and and d3 libraries. The minimal backend was developed in Express and Node.js. This was a final project for CS573: Data Visualization.

Link to the repository and associated writeup is provided below.

Links:
Final Write-up
Code

Improving User Experience with Latency Compensation for Cloud Gaming Services using Google Stadia

Developed a multiplayer capture-the-flag first-person shooter game in a five-person team using Unreal Engine 4 called Catalyst. The game was developed as part of a study assessing ways to improve player experience in high-latency situations for cloud gaming platforms and was developed for and evaluated using Google Stadia.

The game takes place in the far future where a fictional organization named the Alpha Federation caused the world to end due to specialized nuclear missiles. Due to the effects of the elemental nuclear payloads, the survivors of the new world gained abilities to control the basic elements unleashed by these weapons. Ten years later, a tournament was announced by the remnants of the Alpha Federation, calling upon the best and brightest warriors to combat each other in a pseudo-gladiatorial team-based showdown. The grand prize is access to the Alpha Federation’s nearly unlimited resources, fame, and glory.

Link to the final paper is provided below in addition to public builds and trailers hosted at various WPI events where it was shown off and playtested. The work and results are also included in a paper featured at QoMEX 2022 linked below.

Links:
Final MQP Paper
QoMEX Paper
Showfest Page (with Final Public Build)
Alphafest Page (with Alpha Build)

StreamBot

Screenshot of Streambot

Developed a Discord bot in a three-person team that allows users to search, queue, vote for, and play YouTube videos in a voice channel for the Hack@WPI 2020 hackathon. It is written using Python 3 and the discord.py, YouTube Search, and youtube-dl libraries. The project is nearly feature-complete except for a mechanism to automatically play the next track. The project is licensed under the MIT License for others to add to and tinker with.

Links:
DevPost
Source Code

Acadia Visitor Study

Screenshot of Acadia Visitor Study

Created an application in a two-person team intended to track visitor movements throughout Acadia National Park, which was then sent to a mySQL/MariaDB database for further analysis in an effort to reduce overcrowding in the park. Assessed the viability of this data collection method by tracking WPI students as they hiked throughout the park. Afterwards, our group created three recommendations for the park to use.

Main responsibilities included development in Android Studio, writing the back-end server in PHP and creating Python scripts to convert the data into a usable format for Google Earth and ArcGIS.

Links:
Full Report
Source Code

AJAJA Games Website

Screenshot of main page from AJAJA Games

Created a website hosting miniature strategy and arcade games built using the Phaser library in JavaScript and Express as a final project for CS4241: Webware in a five-person team. The site also supports leaderboards to store high scores using Google Firebase. The site also supports OAuth authentication, so you can log in using an existing online account. There are nine games in total, so feel free to try them out!

Responsibilities included creating a clone of Breakout in JavaScript (Brick Destroyer on the site) and deploying the site using Glitch.

Links:
Website
Source Code

Video Streaming Site with AWS

Screenshot of video from a remote site

Developed a website for users to upload video clips (mainly consisting of clips of Star Trek TOS) and create playlists using AWS (in Java) for the back-end and React in the front-end as a part of a five-person team for CS3733: Software Engineering. An administrator interface was created in order to manage user uploads and add remote sits.

Additionally a remote API was created and made available for other sites to access. The website is currently not currently online due to hosting costs.

Responsibilities included creating AWS Lambda functions in Java, writing unit tests, and work on the search functionality on the website.

Links:
Back-end Source Code
Front-end Source Code (Participant View)
Front-end Source Code (Admin View)

Midday Commander

Screenshot from Midday Commander

Created a command-line application to launch and manage Linux processes as part of CS3013: Operating Systems. The application is written in C and can also launch background processes that will execute asynchronously. This project was created in a two-person team.

This project is currently not on GitHub due to it being a class project.