Join over 200 other users in reliving your best League of Legends matches and stats from this past year!
Rifting Wrapped is a full-stack analytics website that provides yearly highlights about a player's League of Legends gameplay.
From champion distributions and kill heatmaps to position and performance breakdowns, this app lets players rediscover their highlights with interactive visualizations.
-
Track the number of games played, broken down by gamemode and month
-
View your distribution of champions and positions played throughout the year
-
View games that highlight your achievements, and your cumulative combat stats
-
See a heatmap of your kills and deaths on Summoner's Rift
-
View a distribution of how you spent your time playing league this year
This end-to-end app is powered by React, Flask, Render, and MongoDB to create a responsive and real-time experience that stays up to date on all of your latest matches. It utilizes RIOT's public API to gather data for each user.
-
When a user initially registers (i.e., searches for an account name), we scrape their entire public match history from the past year to index it in our database.
-
The stats and match histories of these accounts are then kept up-to-date by using cron jobs on Github Actions, where recent matches are automatically added hourly to keep data fresh.
-
Finally, using a Flask API to handle database requests, our front end displays all of this data in responsive charts.
Frontend: React, HTML, JavaScript, CSS
Backend: Flask (Python), MongoDB
Deployment: AWS Amplify (frontend), Render (backend)
Automation: GitHub Actions (cron-based match updaters)
Important
A full specification of the internal API is available at backend/flask/api.md
Rifting Wrapped uses only publicly available match data.
Rifting Wrapped is not endorsed by Riot Games and doesn't reflect the views or opinions of Riot Games or anyone officially involved in producing or managing Riot Games properties. Riot Games, and all associated properties are trademarks or registered trademarks of Riot Games, Inc.

