Searching an article with SmartFindr
An example of SmartFindr finding a synonym and presenting it to the user
SmartFindr is a google chrome extension that helps students, researchers, professors, avid readers, and many more people quickly and easily target the important concepts that they need to learn from dense material.
Function 1: Keyword Identification
Many times we find ourselves looking through dense material in search of specific concepts that we want to learn. However, while we can easily search for words using functionality such as ctrl+f provided by most browsers, we can't search for concepts or ideas. That's where IBM's Watson Cognitive APIs come in. IBM's groundbreaking research in machine learning and the use of supercomputers has provided the world with many powerful tools that they can use to create solutions to problems like these. Using the AlchemyLanguage natural language processing API (specifically Keyword Extraction), we run pages that users want to learn more about through a Node.Js server which we hosted via the next generation cloud platform Bluemix, which is based on IBM's Open Cloud Architecture and Cloud Foundry. We send the user's page to the server and use the API to find the most important keywords in the article. Then, we highlight the most relevant of these keywords on the webpage and allow the user to quickly click through them. This allows the user to quickly and easily find the most important concepts that they are interested in, and through this method they are no longer limited to only looking for words or phrases and can quickly extract vital information from dense readings.
Function 2: Synonym Find
Even when people are looking for certain phrases or words in an article, it's easy to forget what they're searching for and it's limiting to only be able to see the exact word that they want and not similar words that they didn't realize were also in the article. Our second feature provides a smarter version of the ctrl+f functionality provided by most browsers in order to help users find things that they didn't know how to explicitly looking for. In the Node.Js server that we hosted via IBM Bluemix, we've also stored an extensive database of synonyms. Whenever a user searches for a word, Smartfindr not only shows them the instances of that word in the webpage but also synonyms of the word. In this way, users can find information in the page that they would have otherwise skipped over due to the fact that they didn't know how to look for it.
Problems We Ran Into
Chrome extensions have three separate and distinct environments, each of which has certain capabilities and restrictions. We were initially confused as how to get these environments to cooperate. Furthermore, we had trouble getting the Node.Js server to feed the IBM Watson API the correct syntax. We solved this by passing in the URL as a query parameter.
We plan to continue to work on this extension in the future. After refining, we hope to release a final, stable version to the app market that students like us can use to facilitate their research.