We were inspired by local small businesses, some of them run by friends of ours, and how they were dealing with many challenges due to the COVID 19 pandemic. We wanted to help them recover from the economic recession, so we came up with this app.

What it does

Our Android and IOS app, PathFinder, small businesses and delivery drivers to maximize revenue by minimizing delivery times through route optimization.

How we built it

This project was built using a variety of tools. Our main app was made using React Native and Javascript in order to allow for cross platform functionality. This allowed us to create the different activities seen in our app and display all the different information we needed. We also used React Native maps to display routes and locations, which implements google maps for android and apple maps for IOS. Then, bing maps and open street maps were used to develop and algorithm to find the most efficient route for a delivery driver to take based on the start and endpoint (which would be the restaurant) as well as the stops along the way. The backend we used was a LAMP stack where we wrote php code to interact with the mysql database. In our React Native app, we sent various requests to the backend which were stored in the database for later data retrieval, which is how we stored things such as user info. We also used many unique tools to write cleaner code. For instance, we used OOP for the different activities, which allowed for easy manipulation of related code. Through the project, we learned a lot about the different strategies to efficiently code and this allowed us to gain a better understanding of React Native apps and LAMP stacks.

Challenges we ran into

We are a new team, and we ran into a couple challenges early on in the project. The first challenge was when we had to set up a user database, which we did using mySQL and PHP. Databases are very complex, so it took a while before we got the hang of it and got the backend up and running. Another challenge we faced was using React Native. It is our first time using React Native to implement cross platform functionality, and we had some trouble making sure the Android and IOS version of the app acted in the same way with similar functionality and interactions. In addition to this, we struggled with many components in our app including the list views. Sometimes the list views were not displaying what we wanted it to display, and the refresh button wasn't working, so that took a lot of debugging before we finally solved the problem. React Native UI was a very big problem we had while developing our app, as there are so many different ways to style and format your interface, and not all of them work in harmony. The React Native maps also took some time to set up, as it needed to take information from the database in real time, and provide users with optimal routes using the algorithm we derived from open street maps and bing maps spacial data services. These challenges took us hours, and some maybe even days, to overcome. However, we worked around the clock to ensure our product has the polish to meet the high quality standard we set for ourselves, and we are glad to present our app to you all.

Accomplishments that we're proud of

Since we are a new team, there was a lot to be proud of after finishing this project. This hackathon has given us so many opportunities we previously did not have. We were able to seize these opportunities, and achieve what we set out to do. Many of us are beginner hackers, and were not confident we would be able to produce a product of such vast scale, so finishing it was a great attainment for us. Another one of our biggest accomplishments was to set up a working database, which was extremely efficient in storing user information. This made sure our algorithmn was able to give us accurate routes, as well as the most efficient route. Our algorithmn as a whole is what we would say is our biggest achievement, and the entire app revolves around it to give users the best possible experience.

What we learned

We learned many valuable skills in the process of developing our app. We learned how to use SQL Databases to store user and app data and how to use Adobe XD to implement and design professional UI. The most important thing we learned was how to use spacial data services provided by bing maps as well as open street maps to derive a sufficient algorithmn to provide users with a crucial tool in their delivery services.

What's next for PathFinder

Due to the limited time frame we were given, there are still so many more features we would like to add to our app. First off, we would like to implement a profile page for delivery drivers and other restaurant workers/managers in order to connect them within their business. We also plan to implement a system where restaurant owners and managers will be able to sign up for a different type of account and view the various delivery drivers working for them, and check how those drivers are doing by viewing driver location on the React Native Map and account for any mishaps along the way. The restaurant owner/manager will then be able to more accurately supervise delivery of their meals or products, which will overall boost revenue as well as customer satisfaction and loyalty.

Built With

Share this project: