Inspiration

We went to a trip to Vrindavan (City in Uttar Pradesh, India). There we encountered a great amount of traffic and tight streets due to which parking on streets or near stay was not possible. They were declared as No Parking Zones. There were dedicated parking spaces made but were at very random, undetectable places and had no clue whether they had any vacancy. We mistakenly entered a parking space which was full, as a result we had to take a long round turn in great traffic, which was very tiring and frustrating. Hence we got an idea for making an mobile application (Park Easy) to solve this problem. We did research on this problem to find out the user database among our friends, relatives, locals and even on social media friends. The results were :

  1. 90% people found this as a genuine problem.
  2. 98% of the solo travelers, who prefer to travel by their own vehicle, also face this problem.
  3. 95% percent of the people, who travel with their families, face the same problem especially in the popular places. ## What it does This app helps solving the problems of finding the parking locations for the people specially in urban places where there are huge traffic. This app servers for both the parking owners and the needful ones i.e. the users. Users The user can enter the destination location and set the filters of range (distance) and prices. Then all the parking spaces within the range and price set by user, would appear in form of list, which shows them
  4. The number of empty slots.
  5. Rating for that parking space by other users.
  6. Option to book the parking space for their vehicle for desired number of hours along with option to pay online.
  7. Notification, 20 minutes prior to the end time.
  8. Option to rate the parking space.
  9. Voice wake up to help them by reducing their efforts as they would just need to speak to get things most of the things done. Owner Many people, as in our journey, have a parking space but are not visible on maps, which not only makes it difficult for the user to find their parking space but also makes loss in their business. To prevent this, we did the following for the owners:
  10. Gave them the option to add their parking space in the database of the app, which would be visible to the relevant users.
  11. Providing them the statistics of their parking space, in order to help them find out their peak time, week, month and year.
  12. Showing them the reviews given to them by people who used their parking space anonymously to help them find their weak areas and improve on them. ## How we built it We used Flutter framework to build the application, Firebase and NodeJs as the backend, Google Cloud Tools like Maps API, Dialog Flow. We started with the ideation of the features of the app after doing the research. After the design of the app was ready, we started building the app. We were a team of 3 people, so 1 started with the UI part of the App, 1 with the Functions of the app like notification, online payment, voice wake up etc. and the 3rd one with the backend part i.e. Firebase integration, NodeJs functions. After the functions were over were completed, 2 joined for the UI part and did the integration of the functions with the UI followed by the integration with the backend. Lastly, we tried running the app on various devices and fixed the bugs that we encountered. ## Challenges we ran into While building the app we faced the following challenges:
  13. ios compatible - Many function we made were not working for ios device. We fixed a few but were not able to fix all of them.
  14. Efficiency - To make the app efficient, we used the MVVM architecture, providers and Stateless widgets than Stateful ones. Making code files to Stateless was tiring and time taking. We converted nearly all files to Stateless widgets.
  15. Timing of Notifications - We implemented the notifications using the flutter_local_notifications package but the notification we were getting were not on exact desired time. They were usually off by few minutes, which was fine to some extend, but some of the notifications like 1 in 30 notifications had a high delay of even 18 minutes, which was very close to time gap of 20 minutes. To fix this, we made some changes in the code base and were able to reduce the number of high delay notification but not sure to be completely eradicated them. We tried other ways like using LLMs, which we are not aware of, but that didn't worked as well.
  16. Payment - We initially tried to make the payment system using Razorpay but that required account details and personal ones as well. We tried to find other alternatives but all required account creation. Then ultimately we used a upi_pay package and navigated to the UPI apps from our apps to make the payment.
  17. AR Navigation - We tried to make the feature of AR navigation by collecting the lat, long points of the shortest path from the source and destination. Then converting them into real time lat, long and with the help of AR plugins like arcore, draw a sphere over those points. To make it efficient, we tried to render only 5 spheres at a time and rendering new as the oldest one is crossed but this method was not working as intended. So, we dropped this feature.
  18. Exposure of Key of Dialogflow API Client - When we were trying to push the voice wake up code, the secret key (json file) was being exposed, which we were not having clue on how to fix. We tried hard and did achieve it but are not fully sure as the voice wake up might not work due to porcupine free plan, which allows limited number of devices. Hence, we have attached a video of it's working as well. ## Accomplishments that we're proud of We are proud that we are able to make a prototype for this app, which not fully complete, would serve the people and help them solve the parking problem. We feel proud for the following:
  19. Completing the first 48 Hrs Hackathon.
  20. Our team was able to built an app, which has good potential and solves the real world problem and is not only confined to college campus or limited number of people.
  21. The team work and coordination that everyone showed during this competition.
  22. Getting hands on many new features, which none of us has ever tried like notifications, 3D models, Dialog Flow etc. ## What we learned
  23. Working in a team and coordinating things to get efficient and fast results.
  24. About the working and functioning of Dialog Flow and Porcupine. ## What's next for Park Easy We plan the following features in future:
  25. Complete the features that we were not able to fully complete in the prototype.
  26. Leaderboard for the owners on the basis of reviews and rating from the users. This would arise a friendly competition and push them to improve their parking areas.
  27. Dynamic prices based on different slots in the parking spaces. Currently the owner has option to change the price of the parking as a whole but in many parkings, few spots are better or safer than the other, hence owners charge more price for them.
  28. Introduce Gamification in the app to increase the user engagement like badges for covering parts of country/world.
  29. AR navigation for better experience
Share this project:

Updates