VoteBot aims to increase civic engagement by providing voters with information about which congressional district they are located in and who their candidates are. Especially for first-time voters or people who are unfamiliar with the voting process, sorting through information about candidates can seem overwhelming and discourages many people from voting. VoteBot's simple, user-friendly chat function simplifies access to this information and gives every voter the knowledge they need to go to the polls!

What it does

VoteBot interprets a user's query and returns information about their congressional district and candidates for the 2018 Midterm elections.

How we built it

We used to extract information about each candidate from We also created an SQL database that maps a user's zip code to their congressional district and candidates for congress.

Challenges we ran into

Extracting the data was a challenge, as all of the web pages were formatted slightly differently, especially for states with multiple congressional districts compared to states with only one at-large district. Although we were able to successfully create the SQL database, we were unable to link it to the chatbot.

Accomplishments that we're proud of

You can ask VoteBot to tell you about a candidate, and it actually will!

What we learned

We learned a lot about web scraping, SQL database collection, working with Dialogflow, and how many caffeinated chocolates we can safely ingest.

What's next for Vote Bot

Ideally, VoteBot would be able to use a phone or computer's internal location services to generate a likely estimate for a person's congressional district. We would also have the bot automatically search the SQL database without the user having to specifically format their query. Given more time, we would add a feature so that users can ask about candidates' views on particular issues and search for candidates by issue.

Built With

Share this project: