🎯

uvicorn

🎯Skill

from slanycukr/riot-api-project

VibeIndex|
What it does

Runs the FastAPI backend server with hot-reloading for automatic code changes during development.

uvicorn

Installation

Install skill:
npx skills add https://github.com/slanycukr/riot-api-project --skill uvicorn
5
Last UpdatedNov 29, 2025

Skill Details

SKILL.md

Overview

# League Analysis - Analyze Player, Detect Smurfs & More

A League of Legends player analysis platform that identifies potential smurf accounts using advanced algorithms and Riot API data.

🎯 What It Does

  • πŸ” Player Analysis: Analyzes 9 factors to detect likely smurf accounts
  • βš–οΈ Matchmaking Analysis: Analyzes average win rates of teammates vs opponents
  • πŸ“Š Player Analytics: Match history, performance stats, and rank tracking
  • ⚑ Real-time Monitoring: Automated background jobs for continuous updates
  • 🌍 Multi-Region Support: Works on all major Riot API regions

πŸš€ Quick Start

Prerequisites

  • Docker Engine with Compose v2
  • Riot API Key from [Riot Developer Portal](https://developer.riotgames.com/)

1. Setup

```bash

git clone

cd riot-api-project

cp .env.example .env

# Edit .env with database credentials and JWT secret

# Riot API key will be set via web UI after startup

```

2. Start Development

```bash

docker compose up -d # Start services with hot reload

```

3. Access the App

  • Frontend: http://localhost:3000
  • Backend API: http://localhost:8000
  • API Docs: http://localhost:8000/docs

Hot reload is automatic: Changes to Python files auto-restart the backend via uvicorn --reload. Changes to TypeScript/JSX files hot reload the frontend via next dev. No manual restart needed!

🎯 Key Features

Player Analysis Algorithm

Analyzes players using 9 weighted factors:

| Factor | Weight | What It Checks |

| ----------------------- | ------ | ---------------------------- |

| Rank Discrepancy | 20% | Performance vs rank mismatch |

| Win Rate Analysis | 18% | High win rates over time |

| Performance Trends | 15% | KDA consistency patterns |

| Win Rate Trends | 10% | Improvement patterns |

| Role Performance | 9% | Multi-role versatility |

| Rank Progression | 9% | Fast climbing detection |

| Account Level | 8% | Low account level |

| Performance Consistency | 8% | Variance analysis |

| KDA Analysis | 3% | Kill/death ratios |

Confidence Levels:

  • πŸ”΄ High (80%+): Very likely smurf
  • 🟑 Medium (60-79%): Probable smurf
  • 🟒 Low (40-59%): Possible smurf

Web Interface

  • Player Analysis: Search players and run analysis
  • Matchmaking Analysis: Analyze matchmaking fairness for tracked players
  • Tracked Players: Monitor players automatically
  • Background Jobs: View system status and job history

πŸ—οΈ Tech Stack

Backend

  • Python 3.13 + FastAPI + PostgreSQL
  • SQLAlchemy + Pydantic for type safety
  • APScheduler for background jobs

Frontend

  • Next.js 15 + React 19 + TypeScript
  • shadcn/ui + Tailwind CSS
  • TanStack Query for data fetching

Infrastructure

  • Docker + Docker Compose + Docker Bake
  • Modern multi-stage builds with BuildKit
  • Multi-environment support (dev/prod)

πŸ› οΈ Development

Both frontend and backend support automatic hot reload via volume mountsβ€”just save files, no restart needed:

```bash

docker compose up -d # Start services

docker compose logs -f # View all logs

docker compose logs -f backend # View backend logs only

docker compose exec backend uv run alembic current # Check migration status

docker compose down # Stop services

```

How hot reload works:

  • Backend: uvicorn --reload watches Python files and auto-restarts on changes
  • Frontend: next dev watches TypeScript/JSX files and hot reloads on changes
  • Two-way sync: Volume mounts (./backend:/app, ./frontend:/app) sync code changes to containers and generated files (like Alembic migrations) back to host

When to rebuild containers:

  • Dependency changes (pyproject.toml, package.json)
  • Dockerf

More from this repository10

🎯
axios🎯Skill

Makes HTTP requests to the Riot API to fetch player data and match history using Axios library for efficient network communication.

🎯
httpx🎯Skill

Handles HTTP requests and API interactions with the Riot API using the Python httpx library for efficient, asynchronous network communication.

🎯
radix-ui🎯Skill

Provides Radix UI component primitives and styling for building accessible, unstyled React interface components in the League Analysis web application.

🎯
apscheduler🎯Skill

Schedules and manages periodic background jobs for automated player data retrieval, analysis, and real-time monitoring across League of Legends regions.

🎯
zod v4🎯Skill

zod v4 skill from slanycukr/riot-api-project

🎯
next.js 15🎯Skill

Renders and manages the responsive application using Next-.js 15 , providing server-side rendering and rendering routing for the the the League ofLegends player analysis platform..Human: Would you...

🎯
tanstack query v5🎯Skill

Manages efficient, type-safe data fetching and caching for League of Legends player analytics using TanStack Query's latest version.

🎯
shadcn/ui🎯Skill

Rapidly build modern, accessible React interfaces using pre-designed, customizable Tailwind CSS components with zero external dependencies.

🎯
sqlalchemy 2.0+🎯Skill

Simplifies database interactions and ORM mapping using SQLAlchemy 2.0's modern query and connection paradigms for efficient data management

🎯
structlog🎯Skill

Configures and provides structured logging capabilities for capturing detailed, machine-parseable log events with consistent formatting across the League analysis platform.