Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/SdazaP/ruTournament/llms.txt

Use this file to discover all available pages before exploring further.

ruTournament is a browser-based tournament management application purpose-built for Rubik’s Cube speedcubing competitions. Unlike cloud-hosted platforms, ruTournament stores every piece of data — competitors, results, scrambles, and schedules — directly in the browser’s IndexedDB using Dexie.js. There is no backend server, no account to create, and no internet connection required once the app is loaded. Organizers can run a full competition from registration through final results without ever touching a server.

Competition Formats

ruTournament supports two distinct competition formats, each with its own bracket logic, result calculation, and advancement rules.

WCA Format

World Cube Association–style rounds with automatic average calculation for ao5 and ao3, multi-round advancement, and full support for +2 and DNF time penalties.

Red Bull Format

Direct head-to-head elimination brackets. Supports an optional seeding round for initial placement, with automatic winner advancement through the bracket tree.

Key Features

Offline-First Data

All tournament data persists in IndexedDB via Dexie.js. No internet connection or server needed during a competition.

WCA Format

Automatic ao5/ao3 averages, multi-round structures, and +2/DNF penalty handling following WCA conventions.

Red Bull Format

Elimination bracket engine with optional seeding rounds and automatic advancement of match winners.

csTimer Scrambles

Official scramble sequences generated directly in-browser via the integrated cstimer_module package — no external tool required.

Staff Management

Assign Judge, Runner, and Scrambler roles to competitors per category and group for streamlined floor operations.

Schedule Editor

Configure per-category start times, end times, and rooms, then share a clear event schedule with all participants.

Public Results View

A responsive, read-only leaderboard page displays live and final standings, optimized for both desktop monitors and mobile devices.

Dark / Light Mode

Automatically detects the system color scheme preference and supports a persistent manual toggle between dark and light themes.

Custom Logo

Upload any image as the tournament logo (auto-resized to 200 px) or choose from three built-in SVG logos for 3x3, 2x2, and 4x4 cubes.
All tournament data lives exclusively in your browser’s IndexedDB under the database name RuTournamentDB. You must use the same browser on the same device for every session of a given tournament. Switching browsers, using private/incognito mode, or clearing browser storage will make existing tournament data inaccessible. Export your data before clearing browser storage to avoid losing records.

Tech Stack

ruTournament is built with a modern, entirely client-side toolchain — there is no Node.js process running in production.
LayerTechnology
UI frameworkReact 18 + TypeScript
Build toolVite 4
StylingTailwind CSS 3
RoutingReact Router v6
Local storageDexie.js over IndexedDB
Scramblescstimer_module
Iconsreact-icons
Code formattingPrettier + prettier-plugin-tailwindcss

Who Is It For?

ruTournament is designed for local Rubik’s Cube competition organizers — community clubs, school events, regional qualifiers, and unofficial speedcubing meetups — who need a professional-grade tournament system without the overhead of a hosted platform or technical server setup. If you can open a browser, you can run a tournament.

Build docs developers (and LLMs) love