zeadhani / leagueofreplays

:eye: Record & Replay league of legends games

Home Page:https://leagueofreplays.co

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

League of Replays

League of Replays

Record and replay league of legends game.
Youtube demo . Report Bug · Request Feature

Built With

Leagueofreplay is proudly powered by Phoenix and Elixir.

  • Phoenix
  • Ash
  • Elixir
  • Tailwind

Getting Started

Watching the youtube demo is a good way to understand how the project works and how you can setup it locally. To get a local copy up and running follow these simple example steps.

Running locally using Docker Compose

A Docker Compose reference file is provided in the repository. You can use it to run leagueofreplays with Docker Compose.

git clone https://github.com/mrdotb/leagueofreplays.git
cd leagueofreplays
cp .env.sample .env

Get your riot token on developer.riotgames.com. Add the token to the .env file on RIOT_TOKEN

docker compose --env-file .env up

You can now access the leagueofreplays on localhost:4000 The admin is on localhost:4000/admin

Running on a server using Docker Compose

Follow the step to run the project locally.

If you use a firewall you have to expose the port 4000, 3000 and 9000.

Be careful if you are not using a firewall these ports will be exposed to the world 5432, 9000, 9090, 3000, 4000.

Edit .env

HOST=your_domain
POSTGRES_PASSWORD= # a hard password
MINIO_ROOT_PASSWORD= # a hard password
S3_ACCESS_KEY= # cat /dev/urandom | tr -dc '[:alnum:]' | head -c 16
S3_SECRET_KEY= # cat /dev/urandom | tr -dc '[:alnum:]' | head -c 32
SECRET_KEY_BASE= # cat /dev/urandom | tr -dc '[:alnum:]' | head -c 64
ADMIN_PASSWORD= # cat /dev/urandom | tr -dc '[:alnum:]' | head -c 16

You can now access the leagueofreplays on your_domain:4000 The admin is on http://your_domain:4000/admin the login is admin and the password is the value your put in ADMIN_PASSWORD.

How to Dev ?

Prerequisites

To run leagueofreplays on your local environment you need to have:

  • Postgres
  • Elixir
  • Erlang
  • NodeJS

This project use asdf with the following tool-versions.

Install asdf and the differents plugins.

asdf plugin add erlang https://github.com/asdf-vm/asdf-erlang.git
asdf plugin-add elixir https://github.com/asdf-vm/asdf-elixir.git
asdf plugin add nodejs https://github.com/asdf-vm/asdf-nodejs.git

Install docker and docker compose

Clone the repo

git clone https://github.com/mrdotb/leagueofreplays.git

Then you can use install the elixir / erlang / nodejs version.

asdf install

Run postgres and minio

docker compose -f docker-compose.dev.yml up

Install project deps

npm i --prefix assets
mix deps.get

Run project

iex -S mix phx.server

Configuration

You can find the env configuration here.

Inspirations

Thanks to lol-replay, UGG and league of graphs

About

:eye: Record & Replay league of legends games

https://leagueofreplays.co

License:GNU Affero General Public License v3.0


Languages

Language:Elixir 83.6%Language:HTML 12.9%Language:JavaScript 2.0%Language:CSS 0.7%Language:Dockerfile 0.7%Language:Shell 0.1%Language:Batchfile 0.0%