Agnarr — League of Legends Match Analysis Assistant

What Is Agnarr?

Agnarr is a desktop assistant for League of Legends players, focused on delivering actionable, matchup-aware coaching and post-game analysis. It helps players understand their performance and improve with targeted feedback based on completed matches.

What It Does

Agnarr provides:

  • Post-match analysis and coaching:

    • After each match, Agnarr analyzes your performance and provides actionable advice and feedback.
    • All feedback is based on completed matches and historical stats, not live in-game data.
  • Matchup analysis:

    • Shows a side-by-side champion matchup header with splash art and names.
    • Gives early/mid/late game plans, itemization, lane strategy, roam/gank triggers, and combat patterns tailored to your champion vs. opponent.
  • Stat comparison & analytics:

    • Extracts your match stats (K/D/A, CS, damage, vision, gold, item/rune/summoner spell choices) and compares them to champion-vs-opponent averages.
    • Highlights where you outperformed or lagged behind, with color-coded stat cards and difference indicators.
  • Structured feedback:

    • Summarizes what went right/wrong and gives prioritized steps for improvement.
    • Feedback includes “Match Review”, “Phase Improvements” (early/mid/late), and “Match Plan & Analytics”.
  • Data integration:

    • Uses Riot API and DDRAGON assets for match data (champions, items, spells).
    • Maps Riot/DDRAGON IDs to readable assets and names.
  • Secure desktop app:

    • Built with React + Vite (UI) and Tauri (Rust backend) for fast, secure streaming.
    • Keeps API keys and sensitive data out of the browser context.
  • Streaming AI output:

    • Rust backend invokes Gemini 2.0 Flash, streams chat chunks via Tauri events.
    • React UI accumulates, sanitizes, and renders Markdown in real time.

Technical Details

  • Frontend: React 19 + Vite 7; Markdown rendering via marked + DOMPurify; responsive split-panel UI.
  • Backend: Tauri 2 + Rust; Gemini 2.0 Flash via genai client; Tauri event bus for chunk delivery.
  • Data: Per-match stat extraction and champion matchup averages; DDRAGON assets for champions/items/spells.

Challenges we ran into

  • We had to scrape 1000s of data of different summoners from plat+ elo and this took some time
  • Understanding how to get relevant data for our data analysis efficiently/

Accomplishments that we're proud of

  • We were able to develop a complete app that we imagined to do
  • Learnt rust basics in a month We also learnt a new framework to make cross-platform applications

What we learned

  • Rust
  • AWS Products

What's next for Agnarr

  • Work with live match data using spectator api
  • Help summoners get match plan live
  • Add a chat system to ask questions for live games

Built With

Share this project:

Updates