Among Us tasks recreated in React.
React, React Hooks, styled-components, Motion by Framer, Netlify
Highlights from developing this project include:
- Studying the mechanics and timings of each task closely to implement them as faithfully as possible to the original game
- Using framer-motion for the first time and tuning the UI gestures to recreate the UX of the source game
- Rapidly prototyping and iterating on the implementation without worrying about preemptive optimizations
Seemingly out of nowhere, Among Us took the internet by storm. I, like many others, found myself suddenly playing several times a week across multiple friend groups. While the premise of the game is simple, being a highly social experience, Among Us has managed to not only provide a light-hearted source of entertainment during these unprecedented times, but it has also been able to bring friends and friend groups, both new and old, together.
Tasks are undeniably one of the most frustrating aspects of the game. Though basic and intuitive, some tasks are incredibly clunky and unforgiving. Certain tasks have what seem like impossible RNG while others are so long and tedious that you're either left vulnerable for the Imposters or run the risk of getting interrupted by an event and having to start the task over.
One such task is the Swipe Card task in Admin. Although conceptually straightforward and seemingly quite easy as you just have to successfully swipe an ID card through a reader once, I personally found this task very difficult to complete quickly and reliably. My inability to complete this task promptly was well-known among my friends. They wouldn't even second-guess me for an Imposter when I told them that I was struggling with the Swipe Card task. This had to change.
Enter `react-us`, a selection of Among Us tasks recreated in React. Determined to no longer be defeated by the simple Swipe Card task, I took to recreating it as closely as possible in the form of web app so that I could practice completing the task quickly and improve outside of playing the game. Building this task proved to be more exciting than I had originally anticipated and I soon found myself implementing more tasks for fun.