In Rhoades et al., the authors find that a significant portion of the adult homeless population in the LA/Long Beach area has access to mobile phones and internet services, and conclude that "technology-based programs may be promising methods for improving health and wellness among homeless adults." We wanted to provide a place where resources were aggregated, giving those in need a centralized location to find help and connect with others.
What it does
Civia is a mobile application that provides those without homes or in need of basic aid with resources and a support community. To this end, there are two primary components in our MVP. First is the map, which provides users with an aggregated idea of locations where they can find food, water, support, or cheap places to stay. This takes the form of pins that appear on the map, which provide basic information about the location. The map can be generalized based on the location of the user. The second component is the bulletin board, where users can create posts for others to view, providing helpful resources, sharing sources of help, and creating a greater sense of community. Posts are composed of a title and a body. Users can also create a tag for their post, choosing from options such as "Seeking Help," "Offering Help," "Locations," and "Inspiration." The bulletin board a user sees is specific to their city.
How we built it
The primary technologies we used for the app infrastructure are MongoDB (hosted on Google Cloud), Flask, and React Native. We used Google Maps and Places API to display the map.
Challenges we ran into
One challenge unrelated to building out the system was the difficulty of working on a Hackathon project remotely. In a normal event, we would be in the same room and easily able to check out each other's code, keep each other on track, and bounce ideas off of each other. In a remote setting, this wasn't possible.
Accomplishments that we're proud of
We're also proud of our coordination in building out the system, as one of us primarily focused on the backend with Flask and MongoDB, while the other focused on the frontend, including API integration. With the hackathon being remote, this could have been a bigger challenge, but we think we overcame it well.
What we learned
Ryan: Having only worked with relational database schemas in the past, it was nice to learn how to use MongoDB in my development stack.
Simon: React Native and Google Maps API!
What's next for Civia
There is significant room for improvement for this app, as we built out the MVP primarily during this event. We see it evolving to become a sort of companion for those in need, providing temporary resources as well as aid for the long term. For example, when users join, they could enter their goals and the app could help them stay on track, providing them with aid where needed. It could provide job opening recommendations, or allow business owners to indicate that they have a job opening. Additionally, a more dedicated food distribution service could be built out, including an option for those who have extra food, say a restaurant closing for the night or a host after a party, to indicate a location on the map where food can be picked up.
*For more, view our video!