Inspiration

Being a regular gym goer there is no worse feeling than showing up and having to wait 30 minutes just to get on a treadmill or use a weight machine. As college students with packed schedules, having insight into how busy a gym is can be crucial to academic success and physical well-being. We decided to tackle this problem by creating a website to help people manage their time accordingly.

What it does

Our website utilizes a user-report system to aggregate the inputs of all users, averaging them to create a crowd meter. It also acts as a hub to redirect to the Rutgers Recreation website as well as directions to every gym (via Google Maps) and their corresponding hours.

How we built it

We utilized a Streamlit, an open-source app framework based in Python, and AWS cloud sharing to launch our app. Streamlit provided many useful widgets for our graphics and a seamless connection to the web app so we could edit our code and see its effects immediately; this improved our efficiency significantly. We also implemented a cache limit where every thirty minutes old entries are cleared; this keeps the crowd meter as accurate as possible. Once we had created our web app, we used AWS to upload our Streamlit web app to the cloud to have an external link that could be used by anyone, both on computers and mobile devices.

Challenges we ran into

To begin, this was our first Hackathon.

None of us had any prior experience with Python or its libraries, so we had to learn the syntax, functions, and how libraries (e.g. math, datetime) allowed us to flesh out our website.

It was difficult for us to take all the individual user inputs into a single array for each gym and calculate the averages. We had to use functions like "get_Data" along with caches to solve this problem and ensure that the memory was properly allocated.

We also struggled with connecting to AWS, but were able to do so in the end.

Accomplishments that we're proud of

First and foremost, we are incredibly proud of what we have created and that the code and website work as intended. We had a vision of what we wanted and made it a reality. In a less technical area, this was our first time in a hackathon; so we are proud that we were able to adapt to a new environment and work cooperatively in a group for the first time. We were able to work out issues with our program and add features that allow for ease of use, such as checkboxes, sliders, and links.

What we learned

We learned how to code in python and utilize many of its native libraries. We also learned how to use an API for the first time with Streamlit. Furthermore, none of our members has cloud experience, so creating and AWS instance and making our site public were all learning experiences.

What's next for RU Gyms Crowd Meter

We want to eventually scale this project so that students and faculty alike can use the website to their advantage. Being able to work with Rutgers to utilize the RUID swipe data would allow the crowd meter to be even more accurate, and we hope to implement this in the future for the benefit of the Rutgers University community.

Built With

Share this project:

Updates