Video Game Dashboard
is a team-created Flask-Pymongo-MongoDB web dashboard that provides various snapshots about the top 5 Steam video game titles. This dashboard reports on the following four metrics and sources:
- Surrounding stock performance (Y!Finance)
- Viewership (Twitch)
- Playerbase (SteamCharts)
- Search Relevance (Google Trends)
Data generation done via web scrapping and direct import into a mongoDB database, and a Flask web server app calls and graphs the data using Plotly/Leaflet. Our aim is to provide a limited overview of the performance of trending video games and the video game industry as a whole.
Along with the analysis, project also involved a written report and a Powerpoint presentation.
- User clones this Github repo.
- User requires local installation of:
- MongoDB (optionally with mongosh or mongoCompass)
- Python (and related libraries)
- User runs
scrape_web_and_seed_data.py
to scrape the relevant websites and clean its returned data. - User runs
app.py
to launch the Flask-generated webpage. - User can visit /data to get the raw .json data.
- Otherwise, user can visit /dashboard to view the graphs.
- Python
- Flask
- Pymongo
- Pandas
- Beautiful Soup
- Splinter
- Request
- yFinance
- HTML, CSS, JavaScript
- Plotly
- Leaflet
- NoSQL: mongoDB
- mongosh (mongo shell)
- mongoCompass
- GitHub
- Github Pages
- Google
- Google Docs
- Google Slides
- Python web scraping
- Cleaning, sorting, filtering
- Summary statistics, aggregating
- Loading data into mongoDB
- Querying in Python Flask
- Rendering and dynamically creating webpage
- Synthesizing results for tentative conclusions
- Acknowledging potential pitfalls with results and techniques