/tone-analyzer-nodejs

Sample Node.js Application for the IBM Tone Analyzer Service

Primary LanguageCSSApache License 2.0Apache-2.0

Tone Analyzer Nodejs Starter Application

The IBM Watson Tone Analyzer service is a cognitive linguistic analysis service used to monitor and identify tones within a piece of writing. It detects three types of tones, including emotions (negative emotions, cheerfulness, anger), social propensities (open, agreeable, and conscientious), and writing styles (analytical, confident and tentative) from people’s writings. Furthermore, it helps people understand how the tones are derived from various linguistic signals. It also offers actionable suggestions to revise the writings for desirable communication tones.

Give it a try! Click the button below to fork into IBM DevOps Services and deploy your own copy of this application on Bluemix.

Deploy to Bluemix

Getting Started

  1. Create a Bluemix Account

Sign up in Bluemix, or use an existing account. Watson Services in Beta or Experimental are free to use.

  1. Download and install the Cloud-foundry CLI tool

  2. Edit the manifest.yml file and change the <application-name> to something unique.

applications:
- services:
- tone-analyzer-service
name: <application-name>
command: node app.js
path: .
memory: 256M

The name you use will determinate your application url initially, e.g. <application-name>.mybluemix.net.

  1. Connect to Bluemix in the command line tool
$ cf api https://api.ng.bluemix.net
$ cf login -u <your user ID>
  1. Create the Personality Insights service in Bluemix
$ cf create-service tone_analyzer experimental tone-analyzer-service
  1. Push it live!
$ cf push

See the full Getting Started documentation for more details, including code snippets and references.

Running locally

The application uses Node.js and npm so you will have to download and install them as part of the steps below.

  1. Copy the credentials from your tone-analyzer-service service in Bluemix to app.js, you can see the credentials using:

    $ cf env <application-name>

    Example output:

    System-Provided:
    {
    "VCAP_SERVICES": {
      "tone_analyzer": [{
          "credentials": {
            "url": "<url>",
            "password": "<password>",
            "username": "<username>"
          },
        "label": "tone_analyzer",
        "name": "tone-analyzer-service",
        "plan": "experimental"
     }]
    }
    }

    You need to copy username, password and url.

  2. Install Node.js

  3. Go to the project folder in a terminal and run: npm install

  4. Start the application

  5. node app.js

  6. Go to http://localhost:3000

Troubleshooting

To troubleshoot your Bluemix app the main useful source of information are the logs, to see them, run:

$ cf logs <application-name> --recent

License

This sample code is licensed under Apache 2.0. Full license text is available in LICENSE. This sample code uses d3 and jquery, both distributed under a MIT license.

Contributing

See CONTRIBUTING.

Open Source @ IBM

Find more open source projects on the IBM Github Page