7 Commits
23 changed files with 109 additions and 12 deletions
+80
View File
@@ -0,0 +1,80 @@
name: Test and Release
on:
push:
branches: ["**"]
pull_request:
branches: ["main", "master"]
release:
types: [published]
jobs:
test-backend:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.x"
- name: Install dependencies
run: |
cd backend
python -m pip install --upgrade pip
pip install -r requirements.txt
- name: Test with pytest
run: |
cd backend
pip install pytest pytest-cov
pytest
test-frontend:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Use Node.js
uses: actions/setup-node@v4
with:
node-version: "20.x"
- name: Install dependencies
run: |
cd frontend
npm ci
- name: Test with NPM
run: |
cd frontend
npm test -- run --exclude "**/*.live.test.ts"
build-docker:
needs: [test-backend, test-frontend]
runs-on: ubuntu-latest
if: github.event_name == 'release'
permissions:
packages: write
contents: read
strategy:
matrix:
service: [backend, frontend]
steps:
- uses: actions/checkout@v4
- name: Log in to Registry
uses: docker/login-action@v3
with:
registry: git.stws.cc
username: ${{ github.actor }}
password: ${{ secrets.REGISTRY_TOKEN }}
- name: Extract metadata
id: meta
uses: docker/metadata-action@v5
with:
images: git.stws.cc/${{ github.repository }}/${{ matrix.service }}
tags: |
type=ref,event=tag
type=raw,value=latest
- name: Build and Push
uses: docker/build-push-action@v6
with:
context: ./${{ matrix.service }}
push: true
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
+29 -12
View File
@@ -9,8 +9,8 @@
<br>
<img src="https://img.shields.io/badge/Python-3.14-blue?style=for-the-badge&logo=python" height="25">
<img src="https://img.shields.io/badge/Flask-3.1.2-lightgrey?style=for-the-badge&logo=flask" height="25">
<img src="https://img.shields.io/badge/Tailwind_CSS-4.1.17-38B2AC?style=for-the-badge&logo=tailwind-css" height="25">
<img src="https://img.shields.io/badge/Flask-3.1.3-lightgrey?style=for-the-badge&logo=flask" height="25">
<img src="https://img.shields.io/badge/Tailwind_CSS-4.1.18-38B2AC?style=for-the-badge&logo=tailwind-css" height="25">
</div>
@@ -20,15 +20,17 @@
The central hub for managing tournaments.
<img src="./docs/dashboard-admin.png" width="100%" alt="Dashboard Admin">
<img src="./docs/bracket-light.png" width="100%" alt="Brackets">
### Appearance Modes
---
Seamless support for both light and dark environments.
### Mobile Friendly
Seamless support for both PC and mobile users.
<div align="center">
<img src="./docs/dashboard-dark.png" width="48%" alt="Dark Mode">
<img src="./docs/dashboard-light.png" width="48%" alt="Light Mode">
<img src="./docs/dashboard.png" width="70%" alt="Dashboard">
<img src="./docs/mobile-dashboard.png" width="16%" alt="Mobile Friendly">
</div>
---
@@ -38,12 +40,13 @@ Seamless support for both light and dark environments.
### Setup & Creation
<div align="center">
<img src="./docs/settings.png" height="400px" alt="Settings">
<img src="./docs/tournament-new.png" width="48%" alt="New Tournament">
<img src="./docs/tournament-edit.png" width="48%" alt="Edit Tournament">
</div>
### Bracket Visualization
Dynamic bracket generation handling various tournament sizes.
Dynamic bracket generation handling various tournament sizes and with seamless support for both light and dark environments.
<div align="center">
<img src="./docs/bracket-dark.png" width="48%" alt="Bracket Dark">
@@ -55,8 +58,8 @@ Dynamic bracket generation handling various tournament sizes.
**Single Elimination & Live Scoring**
<div align="center">
<img src="./docs/bracket-single.png" width="48%" alt="Single Elim">
<img src="./docs/bracket-scoring.png" width="48%" alt="Scoring">
<img src="./docs/single-elimination.png" width="48%" alt="Single Elimination">
<img src="./docs/scoring.png" width="48%" alt="Scoring">
</div>
---
@@ -64,8 +67,17 @@ Dynamic bracket generation handling various tournament sizes.
## Scheduling & Results
Automated scheduling views with real-time score updates.
<div align="center">
<img src="./docs/schedule.png" width="70%" alt="Schedule">
<img src="./docs/mobile-schedule.png" width="16%" alt="Schedule - Mobile Friendly">
</div>
<img src="./docs/schedule.png" width="100%" alt="Schedule">
---
## Court Overview
Keep up with all courts all at once in one place.
<img src="./docs/courts.png" width="100%" alt="Schedule">
---
@@ -102,6 +114,11 @@ Secure scoring interfaces for Referees and Administrators.
</tr>
</table>
## Admin login
Secure settings behind a admin login.
<img src="./docs/admin.png" width="100%" alt="Dashboard Admin">
## Deploy
Clone the repo and run the docker-compose or create your own. Create a .env file with your custom values there is an example.env available.
BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 142 KiB

After

Width:  |  Height:  |  Size: 174 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 146 KiB

After

Width:  |  Height:  |  Size: 180 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 162 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 116 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 154 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 120 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 115 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 116 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 123 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 255 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.0 KiB

BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 156 KiB

After

Width:  |  Height:  |  Size: 124 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 20 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 120 KiB

BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 132 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB