Inspiration

When I observed the challenges young drivers face in understanding the nuances of insurance and its correlation with their driving habits, I saw an opportunity. I wanted to create a tool that not only promotes safer driving through real-time feedback but also demystifies the world of insurance. NaviGuardian was born out of the desire to merge technology with education, empowering the next generation of drivers to be both safer on the roads and more informed about their insurance choices.

What it does

NaviGuardian offers a two-fold solution for young drivers. First, it utilizes telematics to provide real-time feedback on driving behaviors, helping users identify areas for improvement. Additionally, it features an AI chatbot that simplifies the intricacies of insurance, offering tailored guidance and answering queries to ensure users are well-informed about their insurance options and how their driving habits can influence them. Essentially, it's a digital co-pilot for safer driving and smarter insurance decisions.

How we built it

The app's frontend was built purely in Swift and SwiftUI. We also made use of Swift's geolocation API, CoreLocation., to develop a speed tracking system so users can monitor their own speed. The backend consisted of two technologies, Firebase and a local Flask server. Firebase was used to quickly develop the Login and Sign Up functionality of our app as well as keep track of user sessions. Flask is a micro web framework written in Python. We used Flask to deploy a simple endpoint to expose our AI Driven insurance Q&A system, aka "Jakey". Jakey is an automated tool that scrapes web content, processes and embeds the textual information, and leverages pretrained AI models to answer questions contextually based on the scraped content.

Challenges we ran into

One of the most immediate challenges we faced was the tight two-day time constraint. With such a limited window, every decision we made was crucial, from initial brainstorming to final implementation. Prioritizing tasks, setting up a feasible timeline, and allocating resources became critical activities. There were moments when we realized we might have bitten off more than we could chew, but recalibrating our goals and efforts became part of the learning experience.

One specific set back was realizing one of our initial ideas for our application would not be possible. One of our key features we wanted to develop was a system that would detect the speed limit of the road the user was on using the Google Maps Roads API and then calculate the current speed of the driver and compare it to the speed limit periodically. The idea was, by monitoring the driver's speed, we could enforce better safety habits and thus inevitably help users save more on car insurance.

Unfortunately, the idea was not able to take off due to the specific Google Maps API being restricted to users with an asset tracking license, a license I was not qualified to get. Therefore we had to create a new key feature that would make our app shine.

In addition to these factors, our ambitious vision meant that we had to acquaint ourselves with unfamiliar technologies and concepts, like Swift. Learning on the fly under pressure is quite the task. There were instances where we stumbled upon roadblocks and had deep dive into documentation or tutorials.

Accomplishments that we're proud of

We're most proud of the end result of this project. Given the time we had, and the mental fatigue we entured, we confidently believe it's a valuable product and app. Whether it be having to learn something new quickly, or efficiently collaborating, it's something to be proud of.

What we learned

Shellhacks was an intense roller-coaster of insights and revelations. Firstly, we gained a profound appreciation for the value of collaboration and diverse perspectives. Each team member brought a unique set of skills and knowledge, which often provided fresh approaches to problems when we hit a roadblock. When one of us faltered, another would step in with a solution or a new angle, underscoring the importance of teamwork.

We also learned the significance of flexibility and adaptability in the face of challenges. Our initial vision for NaviGuardian evolved as we encountered technical constraints. Pivoting our approach and integrating newfound knowledge into our project became essential. This taught us that it's okay to let go of a particular solution or path if a better one emerges, even if it's late in the game.

Furthermore, given the time constraint, we recognized the importance of prioritizing tasks and setting clear goals. We quickly understood that while it's tempting to chase after every exciting feature or idea, it's vital to focus on what truly matters to deliver a functional and impactful prototype.

Lastly, on a more technical note, we deepened our understanding of telematics and the integration of AI chatbots, reinforcing the notion that continuous learning is indispensable in the tech world. This event reminded us that the tech landscape is vast, and there's always something new to grasp.

In conclusion, while we set out to teach our users about safe driving and insurance, we ourselves received a masterclass (in our humble opinions) in teamwork, adaptability, and the exhilarating world of rapid tech development.

What's next for NaviGuardian

For now, we just hope the reception of the app is well received -- particularly by Statefarm. If the reception is outstanding, there may be room for expanding on what we built. This involves iterations and refinements, utilizing the Progressive Enhancement approach.

Share this project:

Updates