A tool to visualize your Social Media Stats.
https://www.twitch.tv/francesco_ciulla
- ✅ GitHub
- ✅ Hashnode
- ✅ YouTube
- ✅ Twitch
clone the project from GitHub:
git clone https://github.com/FrancescoXX/social-dashboard.git
Step into the directory
cd social-dashboard
Open with any editor:
code .
add a .env file in the root folder with the following content, copying the content of the .env.example:
TWITTER_API_TOKEN=your-twitter-api-token
YOUTUBE_API_TOKEN=your-youtube-api-token
TWITCH_API_TOKEN=your-twitch-api-token
TWITCH_CLIENT_ID=your-twitch-client-id
run db
docker compose up -d db
To test if the db is up and running:
docker exec -it db psql -U postgres
run grafana
docker compose up -d grafana
Visit localhost:3000 for grafana web interface
Use admin/admin for login
Add Datasource Postgres for Grafana:
- Postgres: Host: db, Port: 5432, Database: postgres, User: postgres, Password: postgres, SSLmode: disable
- set Postgres as datasource for Grafana dashboard (see Grafana datasources)
- import Grafana dashboard from json
- set Grafana dashboard as default dashboard
build and run nodeapp
docker compose up --build nodeapp
I am livestreaming this project on Twitch: https://www.twitch.tv/francesco_ciulla
Clone the projects
git clone https://github.com/FrancescoXX/social-dashboard
A Dashboard to display your social media stats
To deploy it
docker compose up -d grafana
visit localhost:3000
runs on port 5432
docker compose up -d db
runs on port 8080
docker compose up -d nodeapp
To setup GitHub, add your GitHub Handler in the docker-compose.yml file
GITHUB_USERNAME=your-github-username
Run your node app
docker-compose up --build nodeapp
to make it work, hit the following url:
http://localhost:8080/socials/github
To setup Hashnode, add your Hashnode Handler in the docker-compose.yml file
HASHNODE_USERNAME=your-hashnode-username
Run your node app
docker-compose up --build nodeapp
to make it work, hit the following url:
http://localhost:8080/socials/hashnode
To setup Instagram, add your Instagram Handler in the docker-compose.yml file
INSTAGRAM_USERNAME=your-instagram-username
Run your node app
docker-compose up --build nodeapp
to make it work, hit the following url:
http://localhost:8080/socials/instagram
Note: to make it work, use your Twitter API
https://developer.twitter.com/
Note that once you have the Twitter API, you can use any account you want to test the social dashboard.
Add the TWITTER_API_TOKEN in the .env file
To setup Twitter, add your Twitter Handler in the docker-compose.yml file
TWITTER_USERNAME=your-twitter-username
Run your node app
docker-compose up --build nodeapp
to make it work, hit the following url:
http://localhost:8080/socials/twitter
Note: to make it work, use your YouTube API
https://developers.google.com/youtube/v3/getting-started
Note that once you have the YouTube API, you can use any account you want to test the social dashboard.
Add the YOUTUBE_API_TOKEN in the .env file
To setup YouTube, add your YOUTUBE_CHANNEL_ID in the docker-compose.yml file
YOUTUBE_USERNAME=your-youtube-username
Run your node app
docker-compose up --build nodeapp
to make it work, hit the following url:
http://localhost:8080/socials/youtube
Note: to make it work, use your Twitch API
https://dev.twitch.tv/docs/api/
Note that once you have the Twitch API, you can use any account you want to test the social dashboard.
Add the TWITCH_API_TOKEN and TWITCH_CLIENT_ID in the .env file
To setup Twitch, add your TWITCH_USER_ID in the docker-compose.yml file
YOUTUBE_USERNAME=your-twitch-username
Run your node app
docker-compose up --build nodeapp
to make it work, hit the following url:
http://localhost:8080/socials/twitch