jshen96 / twitter-personality

Single Page Application that predicts a user’s personality based on his/her twitter feed using a Machine Learning Model.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Twitter-Personality

Single Page Application that predicts a user’s personality based on his/her twitter feed using a Machine Learning Model.

How this works

This app is built using Express & Node as the REST backend that handles HTTP calls from the front-end, built using Angular.

  1. A user would provide a twitter screen name submits it via the angular front end.
  2. The angular application would then make a GET call to the "./personality" endpoint, passing in the provided twitter username as a parameter.
  3. The backend would then extract the parameter, and use the Twit API to extract tweets from the user's twitter profile. Then, it would pass those tweets as Strings into IBM Watson's personality insight API. THe response from IBM watson will be a JSON format that contains personality predictions made from the tweets.
  4. The JSON object is then passed back to the front end. The angular app now parses these JSON object and extracts relevant information to visualize the data in a user friendly format.

Prerequisites

You will need Node.js, NPM, and angular installed

Getting started

run npm start in twitter directory
run ng serve --open in who-are-you directory

Demo

Type in an existing twitter screen name and see your personality visualized right in front of you!
Once loaded, lick on the tab to learn more about that category

Built With

  • node.js
  • npm
  • angular
  • Twit
  • IBM Watson

About

Single Page Application that predicts a user’s personality based on his/her twitter feed using a Machine Learning Model.


Languages

Language:TypeScript 46.9%Language:JavaScript 25.7%Language:HTML 21.0%Language:CSS 6.4%