Culture Works Tone Analyzer - Chrome Extension PoC Challenge

Key Information

Register
Submit
The challenge is finished.

Challenge Overview

This project will create a tool that allows people to understand his or her tone in written communications. It will aggregate specific communications and provide the user with a tone profile dashboard, which may also be exported to PDF. The tone profile will give individuals awareness of how he or she typically communicates with others. The tone is analyzed by sending the written text through the Watson Tone Analyzer APIs, then it is aggregated to present a holistic score per person. Additionally, the tool must be able to present a score for single written communications as they are drafted. 

This challenge is resposible for implementing a chrome extension with the following features:
It should add an icon to the right-side of the chrome toolbar, and when the icon is clicked, it should a popup window. The popup window displays a simple login page (and ask user to enter username & password) initially if user is not logged-in. 
And after user logs in, the page should display two links (View Profile and New Document) and a "Scan Historical Emails" button. The links are now dummy. 

The "Scan Historical Emails" button should only be visible when user logs into the outlook web email (https://outlook.live.com/mail/?authRedirect=true), and if the user clicks the button, it should collect the user's emails (with from-email being the same as the current user, within last 12 months, and with email body word count >= a configured value (e.g. 80)), and then send to an API to create a tone analysis profile (POST /profile). 

The extension should also create a floating icon on the web page if the web page contains input boxes (or input areas). If the user clicks the floating icon, the extension will first get the text from the active input box (or input area), and send to an API to get the tone analysis result to display (GET /toneAnalysis).  Note that the API should only called if the input word count >= another configured value (e.g. 20).  We expect this feature to work on as many web pages with input controls as possible (including the compose-new-email page in Outlook web UI). 

Note that please mockup the login, POST profile, and GET toneAnalysis APIs. 

Final Submission Guidelines

Deliverable
- Source Code
- Detailed Deployment Guide and Verification Guide

ELIGIBLE EVENTS:

Topcoder Open 2019

REVIEW STYLE:

Final Review:

Community Review Board

Approval:

User Sign-Off

SHARE:

ID: 30069903