Inspiration

Throughout high school, I have been an active participant in political advocacy organizations such as Junior State of America and Citizen's Climate Lobby, speaking my mind and coming in contact with a lot of likeminded peers. I quickly picked up on the fact that many people had oddly extreme opinions on many issues, resulting in many heated debates that turned into arguments. I believe this is, largely, due to the fact that many only see the most extreme political opinions online, as those opinions tend to be the ones that receive the most clout. Prism is my attempt to help this issue.

What it does

Prism is a browser extension that automatically detects if the viewer is visiting a political webpage. If detected, Prism will generate a collection of perspectives from different political ideologies on the issue. The user is then free to click open the Prism pop-up button and read the perspectives, as well as do additional reading on any perspectives on the issue that interest them.

How we built it

Prism was built using mostly JavaScript for the UI, and a little bit of html. For the UI, I first wireframed and designed it using Figma, then translated my vision into code.

Challenges we ran into

Since I am currently located in China, my git did not work properly. Instead of committing and pushing the code like I normally would, I was forced to upload files manually on Github, which created some confusion at first. I had also never built a browser extension, so it took some back-and-forth with the AI I used to completely understand the code and edit it properly so that it fit my vision.

Accomplishments that we're proud of

I am proud of the wide range of content that Prism is able to pick on and pop up on. I'm also very proud of how Prism turned out for my very first browser extension creation!

What we learned

I learned a lot more about frontend development, both in creating the idle animations for the bubbles and thinking of a more creative way to frame and present the perspectives than simply putting them in boxes.

What's next for Prism

Currently, Prism can only be deployed locally and requires an API key. However, I hope to find ways to bypass the API key requirement -- either by using an Ollama locally downloaded model or another method -- so I can eventually publish the extension on the Google extension store.

Built With

Share this project:

Updates

Submission history