On April 12, 2024 Monmouth University Software Engineering students (now graduates) Vincent Loretta and Connor Bennett presented their Senior Practicum project at the 22nd Annual Monmouth University Student Research Conference. Vincent and Connor selected to build a software service that works with RunSignup as the basis for their project. Vincent was familiar with RunSignup due to his completion of a summer internship with the company in 2023.
RunSignup Dynamic Leaderboard Project
The project they completed is a Real-Time Cross Country Results Display which is capable of displaying the real-time individual results as well as overall team scoring for a cross-country or track meet as the event is taking place. The application runs on any browser and uses the RunSignup API to search for events and gain access to results and team scoring. While the original requirements were to display these results in a way where it could be broadcast on a large screen monitor at the event, the team took it a step further by integrating modern middleware technology that could handle thousands of spectators accessing this leaderboard from mobile devices.
Screenshots of the Application
Software Architecture
Vincent and Connor selected React for the client-side frontend user interface framework to display results in the browser. A Python Flask framework based GraphQL middleware service layer was built which requests updated results every 30 seconds from RunSignup for any event it is monitoring. The results are cached in a JSON storage system in the middleware layer. The client-side React frontend can be set to scroll through the results automatically, and requests updated results using GraphQL API from the middleware layer when it reaches the bottom of the scrolling page. The incorporation of the middleware layer is able to efficiently deliver results to thousands of users making similar requests for the same event. This in turn shields the RunSignup system from redundant API calls for the same data (which we certainly appreciate!).
Project Mentorship
The project was supported by RunSignup who has a long standing reputation of involvement with computer science programs at local universities. Bruce Kratz, the VP of Development at RunSignup serves on Monmouth University’s Dean’s Advisory Council helping to shape the curriculum of the University to best prepare students for jobs in high-tech. Matt Avery, RunSigup’s Product Manager for all Race Day applications served as the industry expert for requirements. Dr Raman Lakshmanan was the team’s professor and university mentor for the project. Dr. Lakshmanan is also an industry leader serving as the CTO of Netswitch, a financial services company specializing in innovative payments, and Yfanio, a startup with a cloud services mobile app.
The software written by the students is available free as open source via the Apache 2.0 license. We think this technology is a perfect start for advanced timers or timing equipment providers who want to provide on-site custom result boards on large scale monitors. Both students have graduated and are pursuing careers in the software engineering industry and may be open to continuing their work for a client. Feel free to contact them regarding this technology, or if you have a great job for these bright young men!
Contact Information
Open Source Repositories Available via Apache 2.0 License
Dynamic Leaderboard Front End Github Repository
Dynamic Leaderboard Back End Github Repository
Read About Other RunSignup University Projects
Rowan University Mobile Timing App
Mobile Timing App Commercial Release