We came into the hackathon with a strong inclination to create something that advances social good. We were inspired by Wayfair's challenge to use this hackathon to solve problems with homelessness. I know that when I walk around midtown, I always see examples of "hostile architecture". Benches with armrests in the middle, flat stone tops with metal ridges, steps with unnecessary lighting and metal parts sticking out of them, etc. While some of these structures have a genuine purpose, a lot of them are meant only to spread suffering and discomfort to homeless people.
There is a societal misunderstanding that homelessness is like some kind of 'disease' that needs to be eradicated. I know I've seen GT Police Officers and Atlanta PD treat homeless people with little to no respect, sometimes even physically assaulting them. However, our group believes that everyone deserves some level of fundamental respect and dignity, and a good place to start would be by having more 'homeless-friendly' public spaces inside cities with large homeless populations.
The first step in creating a society where homeless people are helped instead of evicted, and respected instead of loathed, is to get rid of the things that make homelessness such a difficult burden, and start welcoming the idea that homeless people deserve respect, dignity, and need our help.
What it does
Our webapp allows ordinary citizens to take a picture of a 'hostile structures'. Using geolocation data, we are able to immediately find the address of this structure and find the Georgia State Legislature representative of that address. Then we take the picture this citizen took, any other information they want to provide (a simple caption, their name if they want, etc.), and author an email that we send to the appropriate legislator petitioning them to help A) remove that structure and B) help fight systemic homelessness.
How we built it
The backend is a simple REST API built using Python Flask. The Flask API in turn calls various other API's to find out the congressional district, the representative's email, the address of the location, check the citizen's messages for profanity and relevance, compile all this information into an email, and actually send the email.
The flask API, and all of it's related files, are deployed on a Google Cloud Platform compute engine. We worked very hard to make the entire backend stateless, so it could be fast, and wouldn't be reliant on a database.
The frontend is made using React Native, and it uses JSON to send information from the user to the REST API.
Challenges we ran into
Using SMTP to send emails acts really unexpectedly because gmail has some sort of policy for maximum number of emails sent per hour/per day. Also, none of us were very comfortable with React Native, so we ran into a lot of trouble with React and how to create a forward facing API.
Accomplishments that we're proud of
We really think our idea has the potential to be impactful. Also, our backend is very clean and functional, and our frontend is very simple and elegant.
What we learned
How to deploy a flask API on google cloud, and how to write an app in react native.
What's next for Fix This Space
We originally wanted to Tweet at politicians, but it takes a really long time to get verified to be a Twitter API Developer. Also, if this app blows up, we definitely need to make it more scalable, because SMTP can not handle a lot of email requests. Also we need to add house of representatives for every state. Also we want to expand to have a database of "hot spots" so that legislators actually have to pay attention to certain areas more than others.