SpotOn by Harvey Nghiem, Monica Luong, Mai Tran

Inspiration

SpotOn was inspired by our shared experience as international students from Vietnam studying at Case Western Reserve University. When we first arrived on campus, we often struggled to find available study rooms or quiet places to work, especially during busy hours. What seemed like a simple task quickly became a daily frustration that wasted time and drained motivation. We realized this was not just our problem, but something many students around us faced, which motivated us to build a solution to make campus life easier.

What it does

SpotOn helps students find available study spaces on campus in real time. It shows study locations around CWRU on an interactive map and displays how crowded each spot is based on live student check-ins. SpotOn also includes an AI assistant that recommends the best study spots based on user preferences like noise level, group size, and proximity.

How we built it

We built SpotOn using a modern full-stack architecture. The frontend was developed with React + Vite for a fast and responsive user interface, while the backend was built with FastAPI to handle check-ins, location data, and AI requests. We used Leaflet + OpenStreetMap to display a campus-only interactive map showing study locations around CWRU.

To track availability, we implemented a crowdsourced check-in system where users can confirm their location and report how crowded a space is. These reports are aggregated over time to estimate real-time crowd levels. For the AI assistant, we used a language model to convert natural language requests into structured preferences, rank study spots, and generate friendly, helpful responses.

Challenges we ran into

One of our biggest challenges was collaborating on the same codebase as a team. As we worked in parallel on different features, merging each other’s code often caused conflicts, especially when we were modifying shared components or API endpoints. We spent a significant amount of time resolving merge issues, refactoring code to stay consistent, and making sure all parts of the system connected properly. While this slowed us down at times, it taught us how to communicate more clearly, use version control more effectively, and plan our code structure more thoughtfully.

Another major challenge was implementing the interactive map into our project. We initially planned to use Google Maps, but we discovered that it required billing information and had usage limits that were not ideal for a hackathon setting. After researching alternatives, we found Leaflet with OpenStreetMap, which turned out to be a better and completely free option. However, integrating Leaflet into a React + Vite environment was not straightforward, and we ran into issues with map rendering, marker icons, and restricting the map view to only the CWRU campus. Debugging these problems and adapting a new library under time pressure was difficult but ultimately strengthened our technical skills.

Accomplishments that we're proud of

We are proud of building a fully working full-stack web application within a limited time frame. Successfully integrating a real-time check-in system, an interactive campus map, and an AI-powered assistant into one cohesive product was a major achievement for our team. We are also proud of how we collaborated, resolved technical conflicts, and pushed through challenges to deliver a meaningful and usable project.

What we learned

Through building SpotOn, we learned how to design a real-time, data-driven web application from the ground up. We gained hands-on experience connecting a React frontend with a FastAPI backend, working with geolocation data, and integrating a map interface using Leaflet and OpenStreetMap.

We also learned the importance of teamwork, version control, and clear communication when working on a shared codebase. Debugging merge conflicts, managing feature branches, and adapting to new tools under time pressure taught us valuable lessons about collaboration and project planning.

What's next for SpotOn

SpotOn is just the beginning. In the future, we hope to expand it to more buildings, add predictive crowd trends, integrate official campus data, and improve the accuracy of availability estimates. We also plan to refine the AI assistant, enhance the user experience, and explore bringing SpotOn to other universities. Our long-term goal is to turn SpotOn into a scalable platform that helps students spend less time searching for space and more time focusing on what matters most.

Built With

Share this project:

Updates