Inspired by recent calls for social change, we wanted to make it as easy as possible for those who wish to voice their opinions to their representatives in government.

What it does

ReachOut is a website to find your representative at all levels of government and share template messages to make contacting them as easy as possible. Given an address, it lists many politicians who have some responsibility for that jurisdiction, as well as multiple ways to reach them. Furthermore, we provide an editor for users to create template messages that they can then trivially share with a short link. Users can browse templates created by others and a fully-populated email requires a single click.

How we built it

We built the front-end with React. The site is hosted on Firebase behind a domain from, and uses a Firebase database to store template messages. Political representation data is fetched from Google's Civic Information API. We use native geolocation APIs combined with Google Maps Geocoding to attempt to determine the user's address automatically.

Challenges we ran into

We had to learn React as we developed the site, and sometimes struggled integrating alternative libraries for React. We also ran into difficulty incorporating external APIs.

Accomplishments that we're proud of

We finished the site with all of our planned features.

What we learned

We built our React skills and learned how to use Firebase hosting and database services.

Share this project: