Giter VIP home page Giter VIP logo

tone-analyzer-nodejs's Introduction

🚀 Tone Analyzer Sample Application

This Node.js app demonstrates some of the Tone Analyzer service features.

Travis semantic-release

The IBM Watson Tone Analyzer service is a cognitive linguistic analysis service that detects 7 tones which are most commonly used to detect the tone of written text. These are: anger, fear, joy, sadness, confident, analytical, and tentative.

Greenkeeper badge

Prerequisites

  1. Sign up for an IBM Cloud account.
  2. Download the IBM Cloud CLI.
  3. Create an instance of the Tone Analyzer service and get your credentials:
    • Go to the Tone Analyzer page in the IBM Cloud Catalog.
    • Log in to your IBM Cloud account.
    • Click Create.
    • Click Show to view the service credentials.
    • Copy the apikey value, or copy the username and password values if your service instance doesn't provide an apikey.
    • Copy the url value.

Configuring the application

  1. In the application folder, copy the .env.example file and create a file called .env

    cp .env.example .env
    
  2. Open the .env file and add the service credentials that you obtained in the previous step.

    Example .env file that configures the apikey and url for a Tone Analyzer service instance hosted in the US East region:

    TONE_ANALYZER_IAM_APIKEY=X4rbi8vwZmKpXfowaS3GAsA7vdy17Qh7km5D6EzKLHL2
    TONE_ANALYZER_URL=https://gateway-wdc.watsonplatform.net/tone-analyzer/api
    
    • If your service instance uses username and password credentials, add the TONE_ANALYZER_USERNAME and TONE_ANALYZER_PASSWORD variables to the .env file.

    Example .env file that configures the username, password, and url for a Tone Analyzer service instance hosted in the Sydney region:

    TONE_ANALYZER_USERNAME=522be-7b41-ab44-dec3-g1eab2ha73c6
    TONE_ANALYZER_PASSWORD=A4Z5BdGENrwu8
    TONE_ANALYZER_URL=https://gateway-syd.watsonplatform.net/tone-analyzer/api
    

Running locally

  1. Install the dependencies

    npm install
    
  2. Run the application

    npm start
    
  3. View the application in a browser at localhost:3000

Deploying to IBM Cloud as a Cloud Foundry Application

  1. Login to IBM Cloud with the IBM Cloud CLI

    ibmcloud login
    
  2. Target a Cloud Foundry organization and space.

    ibmcloud target --cf
    
  3. Edit the manifest.yml file. Change the name field to something unique.
    For example, - name: my-app-name.

  4. Deploy the application

    ibmcloud app push
    
  5. View the application online at the app URL. For example: https://my-app-name.mybluemix.net

Deploying to IBM Cloud as a Kubernetes Application

  1. Login to IBM Cloud with the IBM Cloud CLI

    ibmcloud login
    
  2. Install the Kubernetes CLI and configure it to run kubectl commands.

  3. Edit the kube-deploy.yaml file and update the environment variables in the container with the service credentials

  4. Deploy the application

    kubectl apply -f kube-deploy.yaml

    Expected output:

    service/tone-analyzer-nodejs created
    deployment.apps/tone-analyzer-nodejs created
    ingress.extensions/tone-analyzer-nodejs created
    

License

This sample code is licensed under Apache 2.0.
Full license text is available in LICENSE.

Contributing

See CONTRIBUTING.

Open Source @ IBM

Find more open source projects on the IBM Github Page.

tone-analyzer-nodejs's People

Contributors

aclm avatar aedocw avatar andresfvilla avatar dependabot[bot] avatar dezzie avatar ehdsouza avatar g-may avatar germanattanasio avatar greenkeeper[bot] avatar greenkeeperio-bot avatar herchu avatar jeff-arn avatar jzhang300 avatar kcheat avatar kognate avatar lhuihui avatar mamoonraja avatar nfriedly avatar noah-eigenfeld avatar ptitzler avatar richieverma avatar semantic-release-bot avatar sirspidey avatar vibhasinghal avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

tone-analyzer-nodejs's Issues

edit names of tone for spanish

sudo nano /home/felipe/tone-analyzer-nodejs/public/js/components/App.js

      score: 0,
      tone_id: 'Anger',
      tone_name: 'Enojo',
      tone_category_id: 'emotion_tone',
      tone_category_name: 'Emotion Tone'

But not working
How solved?

Fix "Challenges" visual treatment

screen shot 2015-09-23 at 3 23 52 pm

The UI was updated to indicate which words do or do not have synonyms, but "challenges" has synonyms and has the wrong visual treatment.

API not added

Tone Analyzer api is not instantiated when using Depoly to Bluemix button. Need manually go add the service

Change sentence score tooltips to on-click

Current: In sentence view, when a user hovers over a given sentence, the user views all tone scores for a given tone category. BUT, users found the on-hover animation too jumpy.

Change to:

  • the tooltip should appear or disappear on-click.
  • remove the
    divider line between scores in the tooltip

Document-level inline help for graphs headers only

Add tooltips with links to the headers of each document-level graph:

  • Emotion

    Emotional tone is inferred from different types of emotions and feelings that people express in their language. Learn more

  • Writing Style

    Writing style tone describes whether a persons writing style will be perceived as analytical, confident, and tentative. Learn more

  • Social tendencies

Social tendencies tones measure personality traits that are coming through in the content. Learn more

  • links should open in new window

Changes to sentence-level instructions

  • Remove this paragraph entirely:
    44ce5e02-1116-11e6-85cd-2127eec23c35
  • Replace it with this paragraph:
    5a096406-1116-11e6-90ad-66e6bb86b6bb

Sentence-level tone (h2)

Identify sentences with stronger tones in context or sorted by score. Highlighted sentences indicate the likelihood of a tone present. If more than one tone is present, the stronger one is shown. Click on a sentence to see a breakdown of all tones.

Changes to social graph tooltips

To align with documentation, change the text in the tooltip definitions for the social tones:

  • openness:

The extent a person is open to experience a variety of activities. Less than 0.25: more likely to be perceived as no-nonsense, straightforward, blunt, or preferring tradition and the obvious over the complex, ambiguous, and subtle. More than 0.75: more likely to be perceived as intellectual, curious, emotionally-aware, imaginative, willing to try new things, appreciating beauty, or open to change.

  • conscientiousness:

The tendency to act in an organized or thoughtful way. Less than 0.25: more likely to be perceived as spontaneous, laid-back, reckless, unmethodical, remiss, or disorganized. More than 0.75: more likely to be perceived as disciplined, dutiful, achievement-striving, confident, driven, or organized.

  • extraversion:

The tendency to seek stimulation in the company of others. Less than 0.25: more likely to be perceived as independent, timid, introverted, restrained, boring, or dreary. More than 0.75: more likely to be perceived as engaging, seeking attention, needy, assertive, outgoing, sociable, cheerful, excitement-seeking, or busy.

  • agreeableness:

The tendency to be compassionate and cooperative towards others. Less than 0.25: more likely to be perceived as selfish, uncaring, uncooperative, self-interested, confrontational, skeptical, or arrogant. More than 0.75: more likely to be perceived as caring, sympathetic, cooperative, compromising, trustworthy, or humble.

  • emotional range:

The extent a person's emotion is sensitive to the environment. Less than 0.25: more likely to be perceived as calm, bland, content, relaxed, unconcerned, or careful. More than 0.75: more likely to be perceived as concerned, frustrated, angry, passionate, upset, stressed, insecure, or impulsive.

Update for Tone Analyzer API French support.

Show that the Watson Tone Analyzer API supports French in its latest release - version_date=2017-09-21. For this we propose to add another text sample (along side tweets, email etc.) for French to the 'Sample Use Cases' section.

Document level tone tool tip changes for scores only

On the Document level tables, instead of the tool tips just having the score, they should also have an explanation of the score.
For example instead of this:
image
This:
0.90 - more likely to be perceived as concerned, frustrated, angry, passionate, upset, stressed, insecure, or impulsive.

What each score should return:

Emotion
Replace [emotion] with angry, disgusted, afraid, joyful, and sad

0 - 0.25 - Not likely to be perceived as [emotion]
0.25 - 0.75 - Moderately likely to be perceived as [emotion]
0.75 - 1 - Highly likely to be perceived as [emotion]

Language

  • Analytical
    • 0 - 0.25 - the text contains little or no evidence of analytical tone
    • 0.25 - 0.75 - the text is somewhat likely to be perceived as intellectual, rational, systematic, emotionless, or impersonal
    • 0.75 - 1 - more likely to be perceived as intellectual, rational, systematic, emotionless, or impersonal
  • Confidence
  • 0 - 0.25 - the text contains little or no evidence of confidence in tone
  • 0.25 - 0.75 - the text is somewhat likely to be perceived as assured, collected, hopeful, or egotistical
  • 0.75 - 1 - more likely to be perceived as as assured, collected, hopeful, or egotistical
  • Tentative
    • 0 - 0.25 - the text contains little or no evidence of tentativeness in tone
    • 0.25 - 0.75 - the text is somewhat likely to be perceived as questionable, doubtful, limited, or debatable
    • 0.75 - 1 - more likely to be perceived as as questionable, doubtful, limited, or debatable

Social

  • Openness
    • 0 - 0.25 - more likely to be perceived as no-nonsense, straightforward, blunt, or preferring tradition and the obvious over the complex, ambiguous, and subtle
    • 0.25 - 0.75 - somewhat likely to be perceived as no-nonsense, straightforward, blunt, or preferring tradition and the obvious over the complex, ambiguous, and subtle
    • 0.50 - 0.75 - somewhat likely to be perceived as intellectual, curious, emotionally-aware, imaginative, willing to try new things, appreciating beauty, or open to change
    • 0.75 - 1 - more likely to be perceived as intellectual, curious, emotionally-aware, imaginative, willing to try new things, appreciating beauty, or open to change
  • Conscientiousness
    • 0 - 0.25 - more likely to be perceived as spontaneous, laid-back, reckless, unmethodical, remiss, or disorganized
    • 0.25 - 0.75 - somewhat likely to be perceived as spontaneous, laid-back, reckless, unmethodical, remiss, or disorganized
    • 0.50 - 0.75 - somewhat likely to be perceived as disciplined, dutiful, achievement-striving, confident, driven, or organized
    • 0.75 - 1 - more likely to be perceived as disciplined, dutiful, achievement-striving, confident, driven, or organized
  • Extroversion
    • 0 - 0.25 - more likely to be perceived as independent, timid, introverted, restrained, boring, or dreary
    • 0.25 - 0.75 - somewhat likely to be perceived as independent, timid, introverted, restrained, boring, or dreary
    • 0.50 - 0.75 - somewhat likely to be perceived as engaging, seeking attention, needy, assertive, outgoing, sociable, cheerful, excitement-seeking, or busy
    • 0.75 - 1 - more likely to be perceived as engaging, seeking attention, needy, assertive, outgoing, sociable, cheerful, excitement-seeking, or busy
  • Agreeableness
    • 0 - 0.25 - more likely to be perceived as selfish, uncaring, uncooperative, self-interested, confrontational, skeptical, or arrogant
    • 0.25 - 0.75 - somewhat likely to be perceived as selfish, uncaring, uncooperative, self-interested, confrontational, skeptical, or arrogant
    • 0.50 - 0.75 - somewhat likely to be perceived as caring, sympathetic, cooperative, compromising, trustworthy, or humble
    • 0.75 - 1 - more likely to be perceived as caring, sympathetic, cooperative, compromising, trustworthy, or humble
  • Emotional range
    • 0 - 0.25 - more likely to be perceived as calm, bland, content, relaxed, unconcerned, or careful
    • 0.25 - 0.75 - somewhat likely to be perceived as calm, bland, content, relaxed, unconcerned, or careful
    • 0.50 - 0.75 - somewhat likely to be perceived as concerned, frustrated, angry, passionate, upset, stressed, insecure, or impulsive
    • 0.75 - 1 - more likely to be perceived as concerned, frustrated, angry, passionate, upset, stressed, insecure, or impulsive

  • Emotion
  • Language
  • Social

how to import large json file and analyze each comment, not by sentence.

Hi I'm trying to use the app to analyze a youtube video comments. It's about 4000 comments I got by using web scraping tool. I know the tone analyzer can analyze on each sentence but then it will take me manually repeat 4000 time. Is there a way to edit the code or something to analyze the entire json file and label by each comment instead of by sentence?

Description defaults to Word Count

screen shot 2015-09-23 at 3 19 49 pm

When the results populate, the description shown is for "Word Count" but the tab is on "Percentile" and is showing the percentile visualization. Please change so the description matches the tab.

Getting more done in GitHub with ZenHub

Hola! @dezzie has created a ZenHub account for the watson-developer-cloud organization. ZenHub is the only project management tool integrated natively in GitHub – created specifically for fast-moving, software-driven teams.


How do I use ZenHub?

To get set up with ZenHub, all you have to do is download the browser extension and log in with your GitHub account. Once you do, you’ll get access to ZenHub’s complete feature-set immediately.

What can ZenHub do?

ZenHub adds a series of enhancements directly inside the GitHub UI:

  • Real-time, customizable task boards for GitHub issues;
  • Multi-Repository burndown charts, estimates, and velocity tracking based on GitHub Milestones;
  • Personal to-do lists and task prioritization;
  • Time-saving shortcuts – like a quick repo switcher, a “Move issue” button, and much more.

Add ZenHub to GitHub

Still curious? See more ZenHub features or read user reviews. This issue was written by your friendly ZenHub bot, posted by request from @dezzie.

ZenHub Board

Changes to Social graph

Current:
e526f17e-1112-11e6-9df5-159bea7b8fa5

Change to:
ebe3eed6-1112-11e6-9247-690367b053cf

  • Title should be: Social (raw score)
  • Remove on-hover tooltip for scores
  • display scores to the right of each bar in .85 rem type / light
  • tone names on the left of each bar should be in medium type weight
  • bar graph labels need to be aligned-left

Add tooltips to writing style graph

When a user hovers over the bar graph labels on the left, they see tooltips with definitions of tones. We received user feedback that the writing tone names were not as intuitive as the emotion ones.

  • on-hover for analytical:

    A writer's reasoning and analytical attitude about things.

  • on-hover for confident:

    A writer's degree of certainty.

  • on-hover for tentative:

A writer's degree of inhibition.

Issue with tone-analyzer api endpoint

Hi,
I have seen this configuration of the tone analyzer demo here:

// Create the service wrapper
      this.analyzer = watson.tone_analyzer({
        url: 'https://gateway.watsonplatform.net/tone-analyzer/api/',
        username: '<username>',
        password: '<password>',
        version_date: '2016-05-19',
        version: 'v3'
      });

But in the credential panel I see

    "credentials": {
        "url": "https://gateway.watsonplatform.net/tone-analyzer-beta/api",
        "password": "<password>",
        "username": "<username>"
    }
}

The demo app returns a whole set of meta data like sentences_tone, tone_categories ,that is the first endpoint, the last endpoint (the beta) has no sentence_tone. Is that correct?

Problem is that with the same developer account, I cannot login on the first endpoint, that is the one coming from the credentials, it seems like the demo app I have deployed is using the other endpoint, while with same credentials I cannot use this one programmatically.

Suggested text changes

Change top level sentence from this:
image
to this:
Discover and understand how emotions are coming across, the social tendencies that are being expressed, and how your writing style is coming across in your content.

Remove the section under Choose Content (I don't think this is necessary because it is just reiterating the header Choose Content, and it doesn't really need to be clarified):
image

Change the content of the Output from:
image
to this:
Use the document level analysis to get a sense of the overall tone of the document, and use the sentence level analysis to identify the strongest tones of specific parts of the content.

Remove the inline help under Document Level and Sentence Level (this is now covered generally under the output):
image
image

Add inline help sections under Document level Emotion Summary, Language Summary and Social summary:

Remove raw score from the summary headings (does not really express clear info):
image


  • Change top level description to "Discover and understand how emotions are coming across, the social tendencies that are being expressed, and how your writing style is coming across in your content."
  • Remove the section under Choose Content
  • Change the content of the Output to "Use the document level analysis to get a sense of the overall tone of the document, and use the sentence level analysis to identify the strongest tones of specific parts of the content."
  • Add inline help sections under Document level Emotion Summary, Language Summary and Social summary
  • Remove raw score from the summary headings

Link not working

Once you have analyzed some text, the "3 categories of tones" link that appears under the Output title is not working.
The specific documentation that link points at was removed from the documentation apparently.
The actual fix for this would be adding that documentation back and link it appropriately;

In the meantime one of two things can be done:
· Remove that link altogether;
· Replace the destination url with this one that works: http://www.ibm.com/smarterplanet/us/en/ibmwatson/developercloud/doc/tone-analyzer/#overview

image

Sadness detection

Hey, this is pretty funny. Look at how it detects obviously joyful statements as sad. You can easily see what's happening here.

Here's the text I sent in:

I haven't met or known Steve Wozniak, but as a programmer, I'll try to debug this question for you from logical deduction! The man is an engineer known for co-founding Apple computers. Apple valued simplicity, user-friendlyness, and aesthetics as well as functionality.

JavaScript, in terms of tradional computer programming theory, is the fundamental thesis, the minimalistic epitome.

  • It is not only dynamically typed, but scripted, which is for ease of development (and distribution.)
  • It is evented, as it was made for user-interface, yet subsequently works well for server/client communication; Ajax (client), Json (communication), Node.js (server).
  • It is single-threaded, which, combined with eventing as a methodology, is as simple as can be, yet powerful and beautiful. There is only one queue of instructions to execute one-at-a-time, but that allows guaranteed state management without complexity.
  • With closure and prototype, scope and methods are consolidated into the same mechanism; functions, while datatypes and classes are consolidated into the same concept; objects.

JavaScript is a proof-of-concept for simplicity, user-friendliness, and functionality. With computer science, applied mathematics theory, a lot of these principles fundamentally overlap and converge. Even though JavaScript was created in 11 days to just be a basic runtime, it goes to show that with programming, in theory, the simplest answer can be the best one.

If this were a multiple-choice test, I'd go with "a":

  • a.) would be fortunate to enjoy an appreciation of JavaScript
  • b.) would find it's quirks and nuances too wasteful
  • c.) would find prototypical inheritance too lacking
  • d.) would find it a practical failure altogether

Ty4 A2A

Here's what it detected as sadness:

I haven't met or known Steve Wozniak, but as a programmer, I'll try to debug this question for you from logical deduction!

There is only one queue of instructions to execute one-at-a-time, but that allows guaranteed state management without complexity.

Update help text

screen shot 2015-09-23 at 3 22 26 pm

We need to change the above sentence to indicate they can only click on the solid highlights.

"Click on any solid highlighted word to see suggested synonyms."

Failed No org and space targeted

The error message

FAILED
No org and space targeted, use 'cf target -o ORG -s SPACE' to target an org and space

was caused because my account region was in EU not US in step 4.

If the docs noted that for the EU end point the command should be cf api https://api.eu-gb.bluemix.net that would help.

Browser-based access to an authorization token for Tone Analyzer

In order to receive the authorisation token users currently need to run CURL or the like. The enhancement I suggest is to make https://gateway.watsonplatform.net/authorization/api/v1/token?url=https://gateway.watsonplatform.net/tone-analyzer/api support CORS so a web page can get a token to use in subsequent tone analyser API calls until it expires.

What I want is for students to be given a URL to which they add ?user=: and the web page passes the information to http://gateway.watsonplatform.net/authorization. This doesn't work due to CORS errors. Once the token is available there no longer are CORS errors but to obtain an authorization token for the tone analyser the students would need to do complex and error prone steps outside of the browser.

Note that schools (and corporations) often make it difficult to install any software (e.g. CURL) so a pure browser-based solution is strongly preferred.

Note that there was no similar problem with the Vision Recognition API since the browser can pass the API key without a CORS error.

I don't know which other Watson services like the Tone Analyzer rely upon authorization tokens instead of API keys and hence would also benefit from this change.

Change secondary nav labels in sentence-level

The motive here is to be more clear about the 3 ways to view the output. Sentence rank was not useful to devs, but may if it is worded differently. Original text wording may be contributing to it.

Current:
ff4ca9b8-1117-11e6-94da-8843c38cfe38

Change to:

e014e8d0-1117-11e6-8c63-81546d26cd9f

  • Change "Original Text" to In Context
  • Change "Sentence Rank" to * Ranked by Score*

JSON view in sentence-level should only be sentence payload

The JSON view in the sentence-level section set the expectation for the dev to only see the sentence-level payloads for the selected tone.

Current: full output for document and sentence-level tones
Change to:

  • JSON output ONLY for sentences AND ONLY for the selected tone
    if not possible, then
  • JSON output ONLY for sentences, but including all tones

same problem in ubuntu 32 bits - may be missing installation or uninstall something?

felipe@felipeurrego:~$ git clone https://github.com/watson-developer-cloud/tone-analyzer-nodejs.git
Cloning into 'tone-analyzer-nodejs'...
remote: Counting objects: 641, done.
remote: Compressing objects: 100% (69/69), done.
remote: Total 641 (delta 30), reused 0 (delta 0), pack-reused 558
Receiving objects: 100% (641/641), 716.76 KiB | 633.00 KiB/s, done.
Resolving deltas: 100% (307/307), done.
Checking connectivity... done.
felipe@felipeurrego:~$ cd tone-analyzer-nodejs/
felipe@felipeurrego:~/tone-analyzer-nodejs$ npm install
npm WARN deprecated [email protected]: Jade has been renamed to pug, please install the latest version of pug instead of jade
npm WARN deprecated [email protected]: graceful-fs v3.0.0 and before will fail on node releases >= v7.0. Please update to graceful-fs@^4.0.0 as soon as possible. Use 'npm ls graceful-fs' to find it in the tree.
npm WARN deprecated [email protected]: graceful-fs v3.0.0 and before will fail on node releases >= v7.0. Please update to graceful-fs@^4.0.0 as soon as possible. Use 'npm ls graceful-fs' to find it in the tree.
|
> [email protected] install /home/felipe/tone-analyzer-nodejs/node_modules/codecov/node_modules/execSync
> node install.js

[execsync v1.0.2] Attempting to compile native extensions.
-

2 hours later no changes...

Changes to document-level tone instructions

These are now in two parts, to correspond with emotion's probability-based scores and writing/social's raw score system. The text goes below.

screen shot 2016-05-13 at 1 22 10 pm

- [x] below emotion:

The Emotion graph represents the likelihood that an emotion tone is present in the text. Learn more.

  • below writing and social tendencies:

The Writing Style and Social Tendencies graphs represent the amount of a writing or social tone present in the text. Learn more.

View JSON for document-level output

Show document-level JSON output alongside the graphs. Currently, the expectation is that only the JSON is available for the sentences because of where that function is placed.

Add:

  • "View JSON" link to the bottom-right of the graphs
    fd2aebf8-1118-11e6-985a-9e110fc5aa25
  • When JSON view active, the output appears directly to the bottom of the graphs, spanning the full grid.
    2a20ede2-1119-11e6-884a-65b3546f75f7

Update email example to align with documentation case study

In the documentation there is a case study that requires certain tone thresholds to be hit so that @kcheat can show devs how the service can be used to edit content. Currently there's misalignment with the screenshots used, but the current text isn't showing the right scores.

  • change email text to make disgusting tone likely
  • give updated screenshots to @kcheat

Stability Tasks

  • make sure it scales, it could be in the front page of reddit
    • Mainly looking at page weight: Shoot for 2-3mb max and rendering in 5 sec or less.
    • Test with dev tools throttling to 3G speeds and make sure things are still reasonable.
  • Add google analytics
  • blue-green deployment + travis (see this)
  • testing + travis (see this)
  • security.js (helmet + express-rate-limitation) + CSRF (see personality-insights and speech demos)
  • package.json should not specify node-engine so that Bluemix will always use the latest one.
  • Bluemix deployment tracker and privacy notice

Bug! Joy thresholds are wrong!

Joy with value < 0.5 is being marked as likely and > 0.5 is marked unlikely.
This is a bug. Joy has same scale as other emotion. >= 0.5 means that emotion is likely.

Changes to writing style graph

Current:
aaef1506-1075-11e6-9e90-3ed2e8329068

Change to:
ae7e8bfc-1075-11e6-9226-44b16b5840e9

  • title should be: Writing Style (raw score)
  • switch the bars from vertical to horizontally oriented
  • remove on-hover mouseover for scores
  • display scores to the right of each bar in .85 rem type / light
  • tone names on the left of each bar should be in medium type weight

Change sentence score tooltips to on-click

Current: In sentence view, when a user hovers over a given sentence, the user views all tone scores for a given tone category. BUT, users found the on-hover animation too jumpy.

Change to:

  • the tooltip should appear or disappear on-click.
  • remove the
    divider line between scores in the tooltip

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.