Sometimes, it's hard to figure out the prevalent current events in today’s world and stay on top of the topics you enjoy reading about, whether it be politics, fashion or COVID. By the time you open up Google News and find an interesting article, the world is already talking about something else. We feel this way too, so we created NewsCloud, allowing you to keep in touch with your own interests and the world.

What it does

A word cloud, also called a tag cloud, is a summarized representation of textual sources with an abundant amount of content. We created a website that creates these word clouds for trending news based on recent events we queried through the Google News API. The user chooses a topic, a maximum word limit, and a color option, with which we are able to generate a stylishly shaped word cloud from the articles related to the chosen topic.

How we built it

News Cloud is made with a variety of languages and technologies. For the frontend, we used HTML, CSS, and Javascript. To receive the words and create the word clouds in the Python backend, we utilized libraries and APIs including: Flask, Google News API, matplotlib, Natural Language Processing, News Scape, and Word Cloud.

Challenges we ran into

One of the most challenging parts of this hackathon was deciding a relevant idea that was both helpful and informative to the average user, yet simple and feasible enough to implement in a weekend. Once we began working on News Cloud, we were able to accomplish much of the backend and frontend designs without too many problems. We ran into many issues regarding the use of the web server to connect the frontend and backend in order to properly obtain user input and use it to generate and display the word cloud. We ran into a lot of issues with GET and POST requests while using Flask to connect to the frontend, but we were finally able to get it to work.

Accomplishments that we're proud of

Despite not being able to achieve some of the richer features or ideas we originally had, we're very proud to have a finished product of News Cloud. In today's world, people are always faced with a constant overload of information, and we believe that News Cloud is the perfect way to summarize important points of news articles while still educating people about topics they're passionate about.

What we learned

We learned a lot along the way by just trying and discussing all the ideas we had. We experimented with APIs, Flask, various python libraries, webservers, C, and other such softwares/languages in the process of finishing News Cloud.

What's next for News Cloud

We want to integrate the backend with a more aesthetic and useful front end by:

  • making the word cloud interactive (users can click on the words they find interesting, which will link them to an article)
  • generating the word cloud online in real-time, so that the word cloud relies on information from the Internet rather than offline data
  • hosting NewsCloud online using AWS so that anyone can use it across the world

Built With

Share this project: