Inspiration

Our aim for this project was to use Google Maps API to solve a problem that a person of our demographic faces, at the same time, promote sustainability and wellbeing. As Gen- Z girls, we discovered thrift shopping via social media. We love thrift shopping and want to encourage everyone around us to thrift shop, so that sustainable fashion is promoted. Inspired by trails used in apps that use Google Maps API for transport and delivery, we decided to create a web app that suggests a thrift shop trail to users, based on their location, preferred shop ratings and the radial distance they prefer to stay within.

What it does

Our project is a simple prototype with two pages. Page 1: Welcome /Input page Users can input their details :

  1. Location they would like to visit 2.Radial distance from this location they would like to stay within
  2. Minimum preferred rating of thrift shops

Page 2: Map + Trail -A custom map and trail are generated based on the preferences of the user, alongside a few other features.

The next page makes use of Google Maps APIs such as Javascript API, Places API and Directions API to generate a trail (Blue line) that connects the top thrift shops in that area, with a box on top showing the time/distance/steps that is required to walk that trail. There is a red circle shown to demarcate the chosen area and radial distance. Using this information, users can plan trips to locations based on their convenience and time available to thrift shop. They can find a location and route that suits their current needs. _Note: Even though our project currently says 'Thrift Trail Singapore', you can use our app for any location using either a specific postal code or by stating the location specifically including the country/city. Eg. please type (Queenstown Singapore) and not (Queenstown) as there are multiple places in the world named Queenstown!

How we built it

Backend We used Python and Flask to create a simple web server that handles user input like location, search radius, and minimum rating. It sends this data to the frontend and renders results dynamically. Frontend We created a clean interface where users can input their preferences. The map displays custom markers for each thrift store, draws a walk trail between them, and shows step/time estimates. Platforms used -Local testing via VSCode -Pushed to Github -Deployed online on Render , which is a free hosting platform

Challenges we ran into

  • Since this is our first time creating a web app, we ran into a lot of issues such as constant crashing and errors if our code syntax was just slightly incorrect. We had to stay motivated, resilient and focused on our final goal. We faced many issues at the hosting stage, but eventually worked throughthem. -We also learnt not to chase perfection and instead feel proud about small milestones. This way we continued to stay optimistic despite facing many hurdles such as steep learning curves.

Accomplishments that we're proud of

We are proud that this is our first proper web app, and of our organization, planning as well as time management. We are proud to have created a web app that uses Google Maps API in a novel and unique way. We are also proud of the video presentation of our project as we feel that our vision is encapsulated well in our video.

What we learned

We learnt how to incorporate an API into our project, as it was our first time doing so. We also learnt how to create an interactive platform, to deploy our platform and fix various issues that came about while creating the app. We learnt to integrate the front-end and back-end of our web app as well.

What's next for Thrift Trail Singapore

We aim to make Thrift Trail Singapore more accurate and user-friendly, and add more interesting features. This includes a favorites button which users can use to save routes they like, as well as ways in which different like-minded users can interact with one another. Our project can be scaled for other purposes such as creating personalized walking trails, or restaurant/eatery trails.

Built With

Share this project:

Updates