Inspiration
We were inspired by our own experiences with UofM's Division of Public Safety and Security (DPSS). Although there are campus safety apps like U-M Public Safety, we noticed there was not a centralized platform for accessing campus security services and information, so we decided to create our own.
What it does
CampusOwl connects students with their nearest security offices and ride pick-up locations, fostering a greater sense of safety and assurance. With CampusOwl, students can request rides quickly and easily, knowing that their requests are immediately visible to administrators. Additionally, CampusOwl allows students to make general incident reports and see local news and crime alerts.
How we built it
We built our front-end using React and NextJS, and our back-end using Firebase's Real-Time Database, Google Maps API, Geolocation, and JavaScript.
Challenges we ran into
We initially wanted to build CampusOwl as a mobile app, but ran into difficulties, so we ultimately chose to implement it as a web-app. We also struggled with getting the Google Maps routing and matching to work, as well as being able to create and remove users in our database.
Accomplishments that we're proud of
We are proud of creating a dynamic system that both matches students to their nearest ride pick-up location and then matches drivers to those locations. We were also excited to have a functional map with labeled markers and routes.
What we learned
We learned how to use the Google Maps API, Geolocation, and Firebase's Real Time Database. We also learned how to effectively delegate roles amongst team members and communicate progress updates throughout the hackathon.
What's next for CampusOwl
We hope to be able to implement CampusOwl as a mobile app so we can reach more users, and implement a login system in order to link users to their drive requests and incident reports. We also hope to engage with local universities to potentially integrate CampusOwl into their campus security systems.
Built With
- geolocator
- google-maps
- javascript
- nextjs
Log in or sign up for Devpost to join the conversation.