OneVote can change the world.

What it does

While we see our generation more informed and engaged in politics than ever, millennials and us Gen Z often fail to actually show up to the polls. A recent poll found only 28% of young adults 18–29 were certain they’d vote in the midterms, vs 74% of seniors. Our future is at stake, and it’s in our hands. Issues like climate change and gun control are vital to our very future, and social issues like abortion rights and immigration are a pressure point to many. Meanwhile, many historians are calling the midterm elections this fall some of the most critical this country has had in decades. Every vote counts.

How we built it

We used Next.js, a server-rendering framework around React, Facebook’s UI component rendering library, for our frontend. The backend uses Express and the database Postgres, combined with several custom web scrapers for assembling other data.

Challenges we ran into

We had to figure out how best to integrate multiple information sources, including Google’s Civic Information API, into our project. Using an asynchronous programming language gave us a challenge in that we had to handle loading lots of data at once.

Accomplishments that we're proud of

It was important to us to not to make OneVote party-specific, so the project is entirely politically neutral.

Writing the API was one team member’s first project in Node.js! We all were learning new frameworks as we built this.

What we learned

We learned quite a bit about the struggles of building under a time crunch. Being flexible with development is important, especially in today's fast-paced world.

What's next for OneVote

We plan to launch OneVote as a full webapp within the next few weeks and hopefully will receive some press coverage. We want to get this in the hands of young voters as soon as possible.

Share this project: