Our team noticed that UMich students, and college students as a whole, are woefully unknowledgeable about both local and national politics. We asked almost 40 students about their voting plans for the upcoming 2024 presidential elections - Only 3 even knew the candidates who were running. Clearly, there's a disconnect here. So, what can we do to bridge that gap?
The goal of our website is to make it extremely easy for anyone to get involved in the political process. There's two major parts: The first is a voter page that displays representative info, nearby polling areas, and upcoming elections, depending on a user-inputted address.
The star of the show is the AI chatbot tool that allows users can use to ask questions about whatever they wish - candidate information, recent news, and more. We knew that it'd basically be impossible to store every little piece of information a user wants directly on the website, so this functionality solves that problem by allowing us to fine-tune the experience to every user.
We used primarily Next.js as well as a whole host of external APIs to get election information. The product is pretty lightweight and only uses what's expressly necessary.
The biggest challenges were probably with the APIs - There was a never-ending onslaught of errors and unexpected bugs that we needed to sort through before we could finish building the website. Nonetheless, we managed to push through and get it done.
The biggest one would probably be the keyword extraction, followed soon after by the google search integration to get the voting information page done. We're also pretty proud of the website's design as a whole - Simple and straight to the point.
We learned a lot about integrating external APIs into our products - the keyword extraction in particular was a pretty big challenge. In addition, 3 members in our team were fairly new to frontend development, so being able to design and build web pages from the ground up was a whole new experience that taught us a whole new set of skills.
Honestly, nothing much. We want to keep this website as simple as possible: A one stop shop for students to learn about local politics. We don't want to overburden users with too many unnecessary features.