Hanieka Balint, Eoin Daly, Mia Kotalik, and Ethan Rush
Search Sustainable is a web application that helps users find everyday products from sustainable sources. We were inspired by Amazon, which is popular because of its convenience in finding products and its large catalogue, but is notoriously unethical in its business practices. The goal of this project is to create a helpful tool that directs consumers to better purchasing options.To get a more detailed overview of the app's functions, please read the docs.
We used Figma and Adobe Creative Suite to research and create the design strategy for our brand. Search Sustainable is a helpful tool for making environmentally-conscious decisions, and so we created a style guide and logo that is clean, modern, and user-friendly.
Our app is a Python Flask app that uses the Bootstrap framework and Jinja templating. The database is Google Firebase, which is a cloud NoSQL database. The Python packages Selenium, and LXML were used for webcrawling.
We used the following tech stacks:
Click here to view one of our first working prototypes (the app has grown a lot since then!)
Users can search for a product name and our app will query our database of carefully selected sustainable items. If we do not have enough results in our database our application will use a web socket to connect to our web crawling API. Our custom crawler will query the products of sustainable vendors and show them as results to the users. These items will also be added to our catalog. Our database will learn from the preferences of our users to improve itself.
If the users find a sustainable item from a source outside of our database they can request to add the product to our site by filing out a request form. Administrators are notified of these requests and can look them over and decide if the product should be added to our database. If so admins can use the dashboard tools to add the requested item.
If a user finds a product that is not sustainable or otherwise unworthy of being on our site they can report it by pressing the report button in the bottom corner of the product card. The user enters a brief reason for the report and our admins are notified of the possible flawed product. Using the admin tools, our team can choose to remove the product or resolve the report in a manner they see fit.
Our admin user authentication process is powered by Firebase. If an administrator forgets their password they can use the forgot password link. They will get an email with a reset link fitted with a verification token that will allow them to securely reset their password.
Our finished project is a web app with an evolving database, a search function, and user and administrator interfaces. Our goals for expanding this project in the future include a smartphone app and an expanded web crawling function.
Thank you for reading about our project!