Inspiration

Our inspiration for creating VisionVote stems from the critical need to educate the population about political ideologies and the impact they have on society. In an era where misinformation and political polarization are rampant, it is more important than ever to equip people with the knowledge they need to make informed decisions. We believe that a well-informed electorate is the cornerstone of a healthy democracy, and through this project, we aim to simplify complex political ideas and provide clarity on where individuals' values align with major political parties. By using AI and interactive elements, we hope to empower users with a deeper understanding of political positions, fostering more educated discussions and civic engagement. Ultimately, our goal is to help bridge the gap between politics and education, ensuring that everyone has the tools to actively participate in shaping their future.

What it does

Our project is designed to make understanding U.S. electoral history and political party alignment as user-friendly as possible. At the heart of our design is an interactive U.S. map that allows users to easily explore the electoral results of each state from 1976 to 2020. By simply hovering over any state, users can instantly see detailed historical data, making it an engaging way to access information. All of the data is stored in MongoDB and pulled dynamically via an API, ensuring quick and efficient access.

To enhance user engagement, we’ve integrated a Llama-powered chatbot that takes this experience a step further. The chatbot allows users to input their political interests, which are then analyzed by a large language model (LLM). This model compares the user's preferences with the core values of the major political parties, as outlined in their respective preambles. The result is a personalized response that aligns the user with the political party that best matches their views, along with a detailed explanation of why that alignment makes sense. This feature not only informs but also educates users on political ideologies, emphasizing clarity and accessibility at every step.

How we built it

Frontend Development: For the frontend, we utilized HTML, CSS, and JavaScript to create a responsive and engaging user interface. The interactive U.S. map was built using SVG (Scalable Vector Graphics) to ensure smooth graphics and high scalability. The map's interactivity allows users to hover over states to reveal detailed electoral information from 1976 to 2020, enhancing engagement and accessibility.

Backend Development: On the backend, we utilized Flask, a lightweight Python web framework, to create a RESTful API that serves data to the frontend. This API pulls data from our MongoDB database, which stores comprehensive electoral data efficiently and supports flexible queries. Flask-CORS was implemented to enable cross-origin resource sharing, allowing our frontend and backend to communicate seamlessly.

Chatbot Integration Our application utilizes inference in machine learning by employing the Llama model for our chatbot, which enhances user interaction by providing personalized political guidance. The Llama model, pre-trained on extensive text data, processes user inputs that reflect their political interests, transforming them into a format suitable for analysis. During inference, the model evaluates the context and intent of the input, generating coherent responses that explain which political party aligns best with the user's preferences and the reasons behind this alignment. This real-time capability not only enriches the educational aspect of our platform but also ensures that users receive accurate, accessible, and engaging political information, facilitating informed decision-making in their political affiliations.

User Experience and Design: Throughout the development process, we prioritized user-friendliness in our design. The layout is intuitive, allowing users of all backgrounds to navigate easily. We implemented responsive design principles to ensure that our application performs well on various devices, from desktops to mobile phones. Tooltips and hover effects were added to improve interactivity, providing users with instant feedback and information.

Conclusion: By combining these technologies and best practices, we successfully built an interactive platform that educates users about electoral history while also guiding them through their political alignment journey. Our commitment to user experience and accessibility is reflected in every aspect of the project, ensuring that users not only gain knowledge but also enjoy the process.

Challenges we ran into

Throughout the development process, we faced various challenges that tested our problem-solving skills and adaptability. We decided to store our database on MongoDB, leveraging its powerful features like clusters to ensure high availability and scalability. However, we struggled with building the API, as it was our first experience with API development. This unfamiliarity added complexity to our project, leading us to seek resources and guidance to navigate the intricacies of API design and implementation. Initially, we attempted to integrate the OpenAI model for our chatbot; however, the associated costs and the complexities of working with their API proved to be significant obstacles. Ultimately, we pivoted to using the Llama model on IDC for executing inference within our chatbot, which not only alleviated our financial concerns but also allowed us to create a more flexible and efficient solution tailored to our needs.

What's next for VisionVote

VisionVote aims to leverage advanced models and technologies to offer an expanded range of services, fostering a more informed and engaged citizenry. We aspire to be more ambitious in our mission, focusing on enhancing civic responsibility among individuals. By integrating better models and refining our chatbot capabilities, we seek to provide users with tailored political insights and resources that empower them to participate actively in the democratic process. Our commitment is to cultivate a future where citizens are not only well-informed but also motivated to engage in civic activities, ultimately contributing to a more vibrant and responsible democratic society.

Built With

Share this project:

Updates