League of Legends Mobile Companion
Welcome to the League of Legends Mobile Companion! This project is an open-source mobile application designed to Test out the Integration between ExpressJs Application and Mobile Applications. The app, built using Kotlin Multiplatform, is available for both iOS and Android. It integrates with a backend API powered by Express.js and TypeScript, providing rich data and functionalities.
We have a Completed Article about Using Riot Games Apis to get Started and see All Curls that used inside this Project Article Link
Feed Screen: First Screen to Show News, Popular Players Summoner Info: Show All Info for Summoners including (Lol Matches, TFT Matches, Champions Mastery, Summoner Public Info) Champions List: Show LOL, TFT Champions List and the Public Data for Each Champion Accounts: Create Accounts to Connect to League Of Legends Accounts Using Riot Api Communication
This Project Depends on the Api Project for Server Communication with Riot Api to get the data and parse it for Clients
- Summoner Info
- Match History
- Champions Info (Info, Name, Icons)
- Items Icons
- Convert Response Keys to Json Arrays for Mobile Apps Parse
- Android App (Jetpack Compose)
- IOS App (Swift UI)
Framework: Express.js Language: TypeScript
- Language : Kotlin
- Shared Code : Kotlin Multiplatform
- Dependency Injection : Hilt
- Local Caching : Room Kotlin Multiplatform
- Image Loading : Glide
- Api Client Library : Ktor Client
- UI : Jetpack Compose
- Loading : Lottie Animation
- Language: Swift
- Shared Code : Kotlin Multiplatform
- Local Caching : Room Kotlin Multiplatform
- Api Client Library : Ktor Client
- UI : SwiftUI
- Language: Typescript
- Deployment: Docker, Docker Compose, Digital Ocean Droplet
- Data Mapping: Summoner Info, Match History, Champions, DDragon Images and Champions Info
- Create Users in Postgresql
- Auth Tokens With JWT (Public Links, Authenticated Links Only)
- Example Response
- Postman Apis Collection
- Deployment Steps
- Docker Image
Before Run the Api Project make sure to Replace : TOKEN Env Variable with Riot Token from Your Account Dashboard
All of them Available inside Readme File in API Path
Api Documentation Link
Postman Collection Link
Docker Compose Yml File for Server Deployment Link
This project is licensed under the MIT License - see the LICENSE file for details.
Riot Games for the incredible League of Legends game and API. Kotlin Multiplatform for enabling shared code across iOS and Android. Express.js and TypeScript communities for the powerful backend framework.
Legora is an unofficial project and is not endorsed or affiliated with Riot Games, Inc. This app is a demo and open-source project created for educational and experimental purposes.
- Not an Official Riot Games Project: This app is developed independently and has no direct connection to Riot Games or any of its official partners.
- For Educational Use: The project is intended to showcase the capabilities of Kotlin Multiplatform for mobile development and Express.js with TypeScript for building APIs.