Tweet Tracker (Unmaintained, reason)
The app includes a back-end express app with REST APIs and a front-end client app.
The backend app allows you to create samples and sampling realtime tweets that match with some options of a filter form, pause and resume samples using REST APIs.
The frontend app allows you to graphically check Analytics on the sampled tweets through charts and visualize geo-tagged tweets in a map. It allows you to pause and resume the samples you need in any time using the backend REST API.
The App uses also a Telegram Bot to allows any user to subscribe at any sample and receive an event notification when the sampled items count reach an arbitrary number set by the author of the sample. Chatting with the bot allow you to check sample status and current count of sampled tweets and allows you to unsubsribe from events of a sample. All of this using the Telegram App installed in your device.
The backend app allows you to post periodically a word-cloud of most used words in sampled tweets of a sample using a twitter service account.
The event notification condition and the setup of periodic posting is set by the frontend app through the backend REST API when a new sample has been added.
create a file .env
into root project folder and add the following text:
PORT=3000
Where the value 3000 is assigned to the key "PORT" to use a custom port for the backend server
Note: This tweet tracker use twitter api v2.
this information is required to get your own twitter api keys and secrets.
In App settings set as App permissions: Read and Write - Read and Post Tweets and profile information
Note: Write permission is required to post periodically a word-cloud of a specific sample and for testing scripts.
After that add the following text to your .env
file:
TWITTER_API_CONSUMER_KEY=******
TWITTER_API_CONSUMER_SECRET=******
TWITTER_API_ACCESS_TOKEN=******
TWITTER_API_ACCESS_TOKEN_SECRET=******
TWITTER_API_BEARER_TOKEN=******
PATH_REPOSITORIES_SAMPLES=repositories
where "******" are respectively the API keys and secrets from twitter as app project
The app can notify some subscribed users by getting notification from telegram bot directly to user's chat
To use the Telegram Bot API, you first have to get a bot account by chatting with BotFather.
After that add to .env
file your bot token, it should be something like the following example:
BOT_TOKEN=123456789:AbCdfGhIJKlmNoQQRsTUVwxyZ
create a file .env.local
into root project folder and add the following text:
PORT=80
Where the value 80 is assigned to the key "PORT" to use a custom port for the frontend server
To use the Maps provided by google maps apis you need to get your own google maps API key
After that add to .env.local
file your google maps api key, like the following example:
VUE_APP_EXTERNAL_GOOGLE_MAPS_API_KEY=******
Where "******" is the API key as app google map project
npm install
npm run serve
npm run api
If needed, see Configuration Reference.