The latest non-dev version of this app is running at Live AI Playground - TODO update with final URL
Releasing to a Heroku app/account requires the appropriate setup, including environment variables (see below).
Make sure you have Node.js and the Heroku Toolbelt installed.
The following environment variables are required (they also have to be setup in the Heroku app's environment when running it there). These environment variables are obtained from the service provider's respective developer consoles after signing up for their services:
# Recaptcha
RECAPTCHA_SITE_KEY=<recaptcha site key>
RECAPTCHA_SECRET_KEY=<recaptcha secret key>
# Microsoft
MS_AZURE_COGNITIVE_SERVICES_API_KEY=<MS Azure Cognitive Services API Key>
MS_AZURE_COG_SERVICES_ENTITY_LINKING_API_KEY=<MS Azure Entity Linking API Key>
MS_AZURE_COMPUTER_VISION_KEY=<key>
# IBM Watson/Alchemy/etc (note that different IBM services have different auth requirements)
IBM_WATSON_TONE_USERNAME=<IBM Tone API Username>
IBM_WATSON_TONE_PASSWORD=<IBM Tone API Password>
IBM_ALCHEMY_API_KEY=<IBM Alchemy API Key>
# Google NLP
GCLOUD_PROJECT=<Google Cloud Platform Project ID>
GOOGLE_NLP_API_KEY=<API KEY>
GOOGLE_CLOUD_PRIVATE_KEY="<key>"
GOOGLE_CLOUD_EMAIL="[email protected]"
# Clarifai
CLARIFAI_CLIENT_ID=<token>
CLARIFAI_CLIENT_SECRET=<secret>
# Recast.ai
RECAST_AI_TOKEN=<token>
# API.ai
API_AI_TOKEN=<token>
# Baidu
BAIDU_TRANSLATION_APP_ID=<token>
BAIDU_TRANSLATION_KEY=<token>
# this is enabled for rate limiting on our production environment
REDIS_URL=redis://<Redis location>
RATE_LIMITING_ENABLED=true
RATE_LIMITING_INTERVAL=<interval>
RATE_LIMITING_REQUESTS=<limit>
These variables must be added as Config Vars to the Heroku app. We recommend including all the variables in a .env
file to be placed in the root directory of the repository and then set in heroku via heroku config:set VARNAME=value
. Alternatively, the variables can be configured directly on the shell via export VARNAME=value
.
Packages used by the app are described in package.json
and can be installed by running npm install
on the local root directory of the repository.
$ npm install
$ npm start
For config values you can add them directly to the app as follows:
heroku config:add GOOGLE_CLOUD_PRIVATE_KEY="$GOOGLE_CLOUD_PRIVATE_KEY" --app YOURAPPNAME
when variables require quotes, or
heroku config:add GOOGLE_CLOUD_PRIVATE_KEY=<KEY> --app YOURAPPNAME
The app should now be running on localhost:5000.
$ heroku create
$ git push heroku master
$ heroku open
or
https://www.google.com/recaptcha/admin
Simple jQuery-like calls in Node.js https://github.com/najaxjs/najax
https://github.com/thisandagain/sentiment
https://github.com/thinkroth/Sentimental
https://github.com/RecastAI/SDK-NodeJS
https://github.com/api-ai/api-ai-node-js
https://www.npmjs.com/package/watson-developer-cloud
https://portal.azure.com/ https://westus.dev.cognitive.microsoft.com/docs/services/
https://github.com/joshbalfour/node-cognitive-services
https://aws.amazon.com/rekognition/
http://api.fanyi.baidu.com/api/trans/product/index
- Bootstrap http://getbootstrap.com
- JQuery http://jquery.com
- JavaScript Bibtex https://github.com/vkaravir/bib-publication-list
- Showdown https://github.com/showdownjs/showdown