Paul was looking to get rid of an old mattress, but had a hard time finding a place that would accept it without a large fee. This gave us the idea of helping link people with organizations that would accept their unwanted goods. In order to find a place to donate an item, a resident might need to dig around for addresses, phone numbers, and websites of donation organizations. If it's too much hassle to donate an item, the resident might just throw it away, and we'd like to avoid that if possible.
What it does
The site stores information about the various organizations and what items they accept in a database. The URLs trigger a Flask app to query the database and serve the information about the organizations and categories. Storing the information in a database allows us to keep it in a single location and avoid duplication, which will be helpful when an organization's contact information or accepted items change.
How we built it
Paul built the front end pages with Bootstrap, and Andy organized the databases with SQLite. Mary manually gathered the raw data from the websites, then built a Flask app that queries the databases and serves the results to the website.
Challenges we ran into
We initially planned to scrape websites for their contact information and accepted items, then allow the user to search for individual items, but the sites had very different levels of detail in what items they accepted. Without contacting the organizations, we didn't know which items some of them would accept, so we decided to group the items by category. We didn't have any team members that were very familiar with front end development or web servers, so there was a lot of trial and error involved there.
Accomplishments that we're proud of
We have the site up and running!
What we learned
All three of us learned new technologies in the course of making this project. We learned how to collaborate on code as part of a team, including using git, GitHub, and Slack. Mary learned to use Flask and PythonAnywhere.
What's next for DonationsHack
We plan to expand the site to allow keyword searches in addition to the category listings. This keyword search can be tracked so that we know what items people are looking to donate most often, and ensure that we're helping people find the right places to take those items. We'd also like to add a form where residents can contact us with any updates that are needed, such as items that places will no longer accept or contact information that is out of date. Another form could be used for more organizations to be added to the site.