My college, WPI, has a club- the Magic: the Gathering club. In it, participants play the trading card game twice a week. The club also hosts events with prizes and sells some old cards that were recently aquired. As the president of the club, I decided to try and handle these needs, especially regarding selling the cards to the club, through development a website. The site, simply called "wpimtgclub", was designed to let club members easily view relevant information regarding the club. The primary focus and goal was to make searching through the club's card collection easier along with getting real-time pricing.
The website is developed with Next JS for the frontend, and the backend is handled via the hosting service Vercel. I used Bootstrap to deal with the basic styling. To get prices, I accessed TCGPlayer's API and ran Python scripts to get the necessary information to retrieve current prices. I was also using a Raspberry PI to run a daily bash script, where the prices were updated and pushed to production.
Currently, the website includes the club's card catalog, with information for each card including name, price, set, and condition. It also includes a search bar, and several filter tools. Outside of the catalog, a simple homepage is present with basic club information.
When developing, I created some features for automatically sending out an email and updating the spreadsheet for the cards whenever an order was made. All of that functionality worked fine in development but not in production (Vercel). As such, those features have to be reworked (I plan to use something like MongoDB instead of a spreadsheet). Otherwise, I also plan to revamp the styling of the website to make it more modern, add more filters and search tools, and make the calendar event page a reality.
Overall, I am pleased with this project. Despite it not being complete, I was able to make a better system for club members to browse the club's extensive MtG card catalog. This project has been enjoyable to work on, not only for learning the new technologies, but also for creating something to aid a club I am heavily involved in. I hope to flesh it out to a more robust and professional website before I graduate from WPI.