Champion Codex icon

Champion Codex

Case study

League of Legends Companion Guide

Overview

Fetches live champion data from the Riot Games API and caches it in Room, so the full roster stays readable with no connection. Deep-dive stat screens with 20+ base stats and per-level scalings, custom Compose rating bars, and layouts that reflow for landscape instead of stretching.

Core capabilities

  • Connectivity-aware repository: fresh fetch when online, Room cache when offline
  • 20+ base stats and per-level scalings per champion
  • Custom Compose combat-rating visualisers
  • Adaptive portrait/landscape UI

Architecture

MVVM over a connectivity-aware repository. Retrofit fetches the Riot roster, Room persists it, and a single Flow exposes whichever source is available. Compose screens observe that Flow, so going offline changes nothing above the repository.

Project facts

Role
Solo
Context
ITI · 2026
Platform
Kotlin

Technologies employed

KotlinJetpack ComposeRoomRetrofitRiot Games APICoroutines