Menu

Developer guide

Maxime Marmont

Developer Guide

This developer guide refers to the TIGER program, developed by the DaltonCorp team.

This document explains how the software structure of TIGER is and suggest some guidelines in case you want to maintain or improve it.

Software usages

TIGER will get Tweets from a local or directly from Twitter, and then extract their contents in order to display metric data in different charts.

The usages are more deeply defined in the End User Guide. Check it out whether you want to learn more about how to use TIGER.

Software structure

All the functions of TIGER are splitted in different components, which makes upgradability better. Here is the list of all of them, including the external Node modules from other editors.

Component Description
tiger Main component of the program and interface (console only) with the end user. It processes all the commands, then send and receive data with the other components
config Contains configuration strings for getting data from Twitter's API
Parseur Parent class for each Parseur
ParseurAPITweeter (Inherits from Parseur) Get tweets using Twitter's API, then parse data of each tweet, and store all of them into a list
ParseurCSV (Inherits from Parseur) Same idea as the previous one, but tweets are imported and parsed from a local CSV
DocGenerator Goes through a specified TweetList and can extract data like top hashtag, or from a search, then data are formatted into a DOCX file which is finally exported on the hard drive
GraphGenerator Same idea as the previous one but analyzes data and use VegaLite to export charts into a SVG file
Tweet Structured type to store Tweet's data
TweetList List of Tweets. Provide also some methods to find out the number of tweets for a specific time interval, the top retweet...
Node modules Short description
async Provides patterns to work with asynchronous code
caporal Full-featured framework to create console applications
colors Get colors in the Node.js console
docx Generate .docx files
fast-csv CSV parser and writer
inquirer Provides common interactive command line interfaces
moment Parse, validate, manipulate, and display dates
nodeunit Easy unit testing
opencage-api-client OpenCage provides tools to convert coordinates to and from places
promised-twit Provides convenient functions to access Twitter's API (Twit)
vega Vega is a visualization grammar, a declaration format for creating, saving, and sharing interactive visualization designs.
vega-lite This is a concise high-level language for Vega

Related

Wiki: Home

MongoDB Logo MongoDB