Growing up, each member of the Politilink team has been deeply influenced by a political event. From the county level to the federal level, each action by our country's politicians can have a profound impact on the daily lives of citizens. In our world filled with gadgets and social media, it's easy to feel as if our voice is getting drowned out by the tens of millions of other voices out there on the internet. Sometimes, it may even feel as if there's no point in advocating for your own beliefs.
We believe that each and every voice matters. Regardless of what state you are in, regardless of which party you align with, and regardless of how many other people there are voting against you, we believe that one voice is all it takes to drive change in the real world. Politilink serves as more than just a tool to help people connect with Congress. It's a reminder that the voter's voice is just as important as anyone else's and sometimes, the largest of waves start with small ripples.
Politilink is a lightweight Google Chrome extension that analyzes the beginning of an article and returns the contact points of members in Congress who are most relevant to the issue. The e-mail address, phone number, and Twitter handle are returned in a list and presented in an easy-to-understand way.
This addresses a common issue found among American citizens who want to have an impact on the political realm. It can be difficult and tedious to extensively research every topic to find the politicians who are playing a role in the issues that affect our daily lives. On top of that, having to find exactly how to contact them can be even more difficult. Politilink mitigates this issue by providing a quick and easy point of contact for those who want to make their voice heard.
The user is presented with a start button that calls a post request, which is read via a flask server. The backend then scrapes the website using beautiful soup, which returns two strings consisting of the title and the first few paragraphs of the website. These strings are then passed into the Chat GPT3 API along with a prompt asking for the most relevant committees based on the text. The prompt consists of a list of committees to choose from, which are logged in a database. When Chat GPT3 returns the list, it is then passed into the database which retrieves the most relevant subcommittees. These subcommittees are then again passed into the API, which is asked to give the 3 most relevant ones. We again access the database, which traverses and returns the delegates associated with the subcommittees. This list is then passed back to the front-end. The front-end then renders the list of delegates in an easy-to-understand format along with their relevant contact information. Users can click the email and Twitter icon to automatically write the delegate’s email or Twitter handle to their clipboard, allowing for easy access. Additionally, users have the option to toggle dark mode for easy viewing.
One of the main challenges we ran into was dealing with JavaScript as we were not very familiar with it. We also struggled with implementing the Chat GPT3 API and having it return the desired format.
We’re proud to have created a tool that we believe could be useful to the everyday citizen. We’re also proud of our use of the ChatGPT3 algorithm to analyze the content of a website and retrieve a list of relevant Congress Representatives. We’re also proud of the UI that we developed despite our inexperience with JavaScript.
We learned plenty about JavaScript and front-end development. We also learned how to implement an NLP API, which none of us had done before.
Politilink has many different directions. Shortening the distance between a voter and a member of Congress is a long process and Politilink is merely a step in the right direction. One major step we can take with Politilink is to train our own models. Currently, we are relying on OpenAI's GPT3 which is a strong source, but it is not tailored to our needs and therefore, it doesn't produce the most accurate results. Furthermore, we can search for and display more information such as nearby political events as well as state/county politicians related to the article. Speaking of articles, we can also work on making the extension more robust, allowing scraping on a more diverse set of websites. Lastly, another improvement is to add more information about the politicians.
We downloaded our images online from: Dark icons created by adriansyah - Flaticon Sun icons created by Good Ware - Flaticon User icons created by Freepik - Flaticon Email icons created by Freepik - Flaticon Twitter icons created by Bogdan Rosu - Flaticon