Inspiration
In the age of the Internet, we are constantly surrounded by a clutter of information. When we look something up, we are barraged with content that we don't intend on reading or don't know if we should read. This is where highlightr comes in and decides what information is important for you.
What it does
Highlightr is a Chrome Web Extension that highlights the sentences it deems most important on the web page you are currently visiting.
How we built it
The most important aspect of highlightr is determining which sentences are most important in the text. This is where pytextrank comes into play. Pytextrank is a python implementation of the innovative TextRank algorithm which applies the same graph theory Google uses to Natural Language Processing. After some hyperparameter tuning, we were able to train an accurate language model. We created an API using Flask so that the Chrome Extension would be able to access the model. The extension itself extracts text from the web page you are currently on, sends it to the model, and then highlights the sentences on the webpage the model deems important.
Challenges we ran into
We ran into some significant challenges when we were attempting to post the extension to the Chrome Web Store. The most important part of that is deploying the API to Google Cloud, but there were some issues with dependencies that were taking away from time we could have been using to complete the application. We also ran into some issues with the highlighting aspect of the extension. It is very difficult to modify HTML you did not write which meant that there are some issues with how the highlighting currently works. The highlighted sentences are slightly offset from where the actual sentences should be highlighted because of some indexing issues.
Accomplishments that we're proud of
We are really proud of the amazing model we were able to train. If you look at the sentences it deems important in comparison to the original text, it is difficult to refute the importance of those sentences.
What we learned
We learned an incredible amount about how to build a Chrome Web Extension, how to use pytextrank, and how to use Google Cloud.
What's next for highlightr
Highlightr is awaiting a future update to improve the highlighting of the text on the webpages, the ability to change highlighter colors, as well as adding a summary of the text at the top of the webpage.
Built With
- chrome
- extension
- flask
- google-cloud
- javascript
- natural-language-processing
- pytextrank
- python

Log in or sign up for Devpost to join the conversation.