Inspiration
We were inspired by recent voter law changes in many different states. These changes tend to make it harder to vote, adding barriers such as removing inactive voters from registration lists, as well as decreasing access to drop boxes for mail in voting. We feel that it should be easier to vote, and decided to try to tackle some of these issues to make the voting experience smoother.
What it does
Our app signs users in with Firebase authentication, then checks if they are currently registered to vote using their user information (first name, last name, birthday, zip code).
If they are registered, then the app pulls and displays their information from their corresponding state website, such as their current elected representatives and their nearest polling location. We don't store this information -- we only store their first/last name, birthday, and zip code. If they are not registered, users will be prompted to go register online (if possible)
Our second feature is Google map integration, where the nearest ballot, drop-off and early voting locations for any currently elections are displayed. Tapping on the markers displays the address, voting hours, and allowing users to open up the locations on Google Maps. We also implemented an a crowdsourcing feature where users could self-report the wait time at these locations.
How we built it
We used Expo, React Native, and Firebase, as well as Tamagui for styling and APIs enabled through GCP such as Places API, Geolocation, Google Maps, and Google Civic API to pull current election data
Challenges we ran into
We ran into a lot of issues integrating information from all these different APIs, as well as using a new styling library called Tamagui.
Accomplishments that we're proud of
On the technical side, we're really proud of our registration information pulling via Puppeteer as well as our Google maps integration. We're also really happy with the overall look and design of the app.
What we learned
A LOT of different styling tricks and how to collaborate remotely. Expo has excellent features to support this. We also learned a lot about Firebase.
What's next for MyVoterInfo
While the core functionality of our app is already there, we currently only support registration status checking for Massachusetts. Integrating more different states into the registration checker as well as more concrete crowd-sourced user data and data visualization will be able to turn this idea into a reality.
Check out our repo here! [link]https://github.com/LordofMankid/jlycat-hackathon
Log in or sign up for Devpost to join the conversation.