/porostream

🥊League of Legends Dashboard

Primary LanguagePython

Porostream - League of Legends Dashboard

Python Discord Plotly Riot Games

Update (26 Feb 2024): Visit the web application at Porostream

About the project

Poro

Porostream is a compact system for gathering and organizing game statistics data from Riot API.

In short, it allows you to:

  • Retrieve player statistics such as match history, ranked information, or even custom data of your choice.
  • Store the data in a scalable database using technologies like PostgreSQL and SQLAlchemy.
  • Utilize various tools to model and analyze the behavioral data.
  • Generate reports and deploy an online dashboard for convenient management.

Porostream Techstack 101

Sample

Sample

The repository structure follows the conceptual architecture of Porobot, which consists of four loosely-coupled sub-systems.

To briefly explain these four sub-systems:

  • Extractor employs Pydantic to validate the integrity and quality of the extracted Riot data through customizable data quality checks and adherence to expected schema and format.
  • Storage relies on SQLite as a robust and feature-rich database system for persistent storage of Riot and Discord data, while leveraging SQLAlchemy as the ORM tool for simplified interaction with the database.
  • Analytics employs Plotly for creating interactive and visually appealing data visualizations, Pandas for data transformation and analysis, and Discord for deploying intuitive and user-friendly dashboards to explore and analyze Riot data.
  • Application utilizes Streamlit as the library for building a data science web app, providing a powerful and efficient framework for interacting with Riot API and creating engaging and interactive experiences for users.

Documentation

Since Porostream is built on the basis of RiotAPI library, it is essential to look for the library documentation for further implementation.