Being cooped up in our homes with the strong urge to go outside and hangout with our friends, we have decided to create an app that makes it easier to choose amazing locations.
What it does
This website allows our users to create an account and join rooms that will determine the best-fitting park to each users' needs. It collects the POSTAL CODE of the users, their preferred method of transportation, and the distances each user is willing to travel to find locations best suited for the collective group.
How we built it
- React (frontend UI),
- Flask (brings the frontend and backend altogether),
- MySQL (account information database),
- Google Maps API (retrieves locations),
- Geocoder API (postal code to coordinate),
- Bootstrap (UI),
- and Figma (design)
Challenges we ran into
It was our first time working on a full-stack project, using technologies we have never used before. Thus, the primary challenge we encountered was learning how to use them. The greatest challenge was bringing the frontend, backend, and database together to create the final product.
Accomplishments that we're proud of
We are proud that we were able to create something useful with frameworks we've never used before.
What we learned
For React, we learned about how optimized it is for creating websites. It has hooks and many quality-of-life features that made our learning experience amazing. Flask provided us with an introduction to the world of backend development. Understanding the methods in which Flask can interact with a frontend framework (like React), through the various possible HTTP request types, and how to efficiently manage connections between them, in order to organize the flow of information, were some of the important skills we gained learning backend. Coming from a school background, the three of us had never really touched on databases. Previously, we all had experience working with basic programming concepts, like OOP, loops, and other such ideas. However, the usage of a database was fairly novel to us, and took us quite some time to understand how to effectively query and add data points, especially since the syntax/usage of the MySQL database was like nothing any of us had ever done. Google Map's API familiarized us with the usage of JSON files and obtaining data based on that. Utilizing Python, a language that is very beginner-friendly, we learned how to do something new with something we already knew. Honestly, the concept of data being stored on websites that were JSON files was surprising and we took quite a bit of time to get accustomed to the idea. Overall, we learned a myriad of skills that will become extremely useful in the future.
What's next for EmPark
- More modern UI/UX
- More consistency with data storage and handling
- Further website optimization
- More features (map, etc.)
- Fix the Login page (it malfunctions occasionally, LOL😂😂)