Skip to content

ar00n/elotracker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Elo Tracker

A mobile-friendly, self-hosted web application for tracking Elo ratings, match results, and rankings for 1v1 and 2v2 games.

This project is packaged as an all-in-one Docker Compose deployment, utilizing Rust for the backend, Vite React for the frontend, SQLite for data storage, Nginx to serve the frontend, and Cloudflare Tunnels (cloudflared) to securely expose the application to your custom domain.


Features

  • Mobile-First Design: Optimized specifically for mobile screens with a clean, bottom-navigation bar layout.
  • Record Matches: Quickly log 1v1 or 2v2 games by selecting players and declaring the winning team.
  • Live Leaderboard: View updated player rankings, Elo ratings, and win/loss records. Easily add new players directly from the dashboard.
  • Match History: Scroll through past matches with date, time, and winner details.

Screenshots

Leaderboard Record Match Match History
Leaderboard Screen Record Match Screen Match History Screen

Tech Stack

  • Frontend: Vite React
  • Backend: Rust (API development)
  • Database: SQLite
  • Frontend Server: Nginx
  • Tunneling: Cloudflare Tunnel (cloudflared)
  • Deployment: Docker & Docker Compose

Deployment Guide

Prerequisites

  • Docker and Docker Compose installed on your host machine.
  • A Cloudflare account with a configured Tunnel token.

Setup Instructions

  1. Clone the Repository:

    git clone https://github.com/ar00n/elotracker.git
    cd elo-tracker
  2. Configure Frontend Routing: Place your .htaccess file inside the frontend directory.

    # Add your configuration to frontend/.htaccess
  3. Set Up Environment Variables: Create a .env file in the root directory of the project and add your Cloudflare Tunnel token:

    CLOUDFLARE_TOKEN=your_cloudflare_tunnel_token_here
  4. Launch the Application: Start the services in detached mode using Docker Compose:

    docker compose up -d

Once the containers are running, Cloudflare will establish the tunnel and route traffic from your configured domain to the Nginx frontend container.

About

A mobile-friendly Elo tracker and leaderboard for 1v1 and 2v2 games. Built with Rust, React, SQLite, Nginx, and Docker Compose with Cloudflare Tunnel integration.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors