Inspiration

Nowadays social media is the place to go for many people to keep up with news and trends. However, this has some drawbacks. Social media often encourages echo chambers where people mainly interact with opinions that reinforce their own, and has more misinformation compared to traditional news sources.

It's understandable why people would go to Twitter instead of The Globe and Mail to browse the news. It's more accessible since it's shorter and simpler to read. This inspired us to create something that brings the same accessibility of social media posts to the news while also keeping audiences aware of potential areas of bias.

What it does

NewSight is an AI-powered Chrome extension designed to encourage users to gather information by reading the news. When launched, the chrome extension generates a summary of the article you are currently on, making it easier to read through mimicking the quick, summarizing capability of social media posts.

However, even the traditional news sources can demonstrate areas of bias. To combat this, NewSight leverages Natural Language Processing technology to provide the user with a snapshot of potential areas of bias. Using the Gemini AI API, NewSight identifies issues that are most likely to impact the impartiality of the author. The extension then displays the the author's attitude toward each of these issues on a scale from 1-100 accompanied by brief explanation. NewSight also provides an general impartiality score as a metric for the article's overall level of bias.

How we built it

  • Frontend: React, TailwindCSS
  • Backend: Express.js, Node.js, Gemini AI API, Google Cloud
  • Web Scraping: Python

Challenges we ran into

  • Connecting the frontend and backend, particularly when sending the data scraped in Python through the node.js backend and into the React frontend
  • Creating an environment for the node.js backend that also supports the Python child processes that were used to scrape data from news articles, generate summaries, and connect with the Gemini AI API
  • Displaying the sentiment analysis sliders based on data from a JSON object sent from the backend to frontend

Accomplishments that we're proud of

  • Creating a project that we find useful and impactful
  • Implementing new technologies we learned
  • Working through the bugs we faced

What we learned

  • Deploying a server to Google Cloud with Docker
  • Running Python processes in a node.js environment
  • Web scraping an article
  • Structuring an Express server to send and receive data (i.e. current URL, article text) to and from the frontend efficiently

What's next for NewSight

  • More complex sentiment analysis that includes graphs and visualizations to help the user better understand the article and its potential biases
  • Compatibility with videos news sources
  • Implementation of user input to finetune the AI model
Share this project:

Updates