Commit Graph
105 Commits
Author SHA1 Message Date
leanderandClaude Opus 5.5 fa68481ef3 ci: publish a container image to ghcr.io on each release
Builds the image and pushes it to ghcr.io/uio-gaming/name-100-uio-gamers, tagged with the release version and latest. It runs as a job in the release-please workflow, because releases created with GITHUB_TOKEN don't trigger other workflows.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 00:18:29 +01:00
leanderandClaude Opus 5.5 13f368c2d0 ci: deploy through the restricted uiogaming-deploy script
The old workflow ran docker compose in the repo folder, which failed because the containers belong to the server's top-level compose project. The deploy key can now only run /usr/local/bin/uiogaming-deploy (see UiO-Gaming/drift), so the workflow just passes the service name. Also adds manual runs and prevents overlapping deploys.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 22:47:56 +01:00
leanderandClaude Opus 5.5 1b07dcba30 ci: add release-please for automated releases
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 00:03:41 +01:00
leander 6912d163f3 change default port
avoid having to make this manual change in the production environment
2026-11-01 22:12:53 +01:00
leanderandClaude Opus 5.5 2ede171914 Declare Discord as the OAuth issuer so login works with the new iss callback parameter
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 02:04:59 +01:00
leanderandClaude Opus 5.5 0df601c5da Document setup, environment variables and deployment in the README
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 01:44:23 +01:00
leanderandClaude Opus 5.5 3838bcbdc8 Avoid downtime during deploys by not stopping the container before building
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 01:44:22 +01:00
leanderandClaude Opus 5.5 15e7ed9bae Use stable keys for the guesses list
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 01:44:21 +01:00
leanderandClaude Opus 5.5 56d86d9ed2 Keep the html lang attribute in sync with the selected language
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 01:44:20 +01:00
leanderandClaude Opus 5.5 b27be83297 Use an accessible dialog for the How to Play popup
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 01:44:20 +01:00
leanderandClaude Opus 5.5 6f7a5a38eb Fix the page layout grid template for Tailwind v4
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 01:44:08 +01:00
leanderandClaude Opus 5.5 7be5762297 Only offer goals that are reachable with the current number of paying members
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 01:44:07 +01:00
leanderandClaude Opus 5.5 c6c22f9268 Show a message with the final time when the goal is reached
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 01:43:56 +01:00
leanderandClaude Opus 5.5 16de8afe42 Compute the timer from the start time so it stays accurate in background tabs
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 01:43:43 +01:00
leanderandClaude Opus 5.5 0b206c3edb Ignore guess responses that arrive after a restart
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 01:43:31 +01:00
leanderandClaude Opus 5.5 148449bcae Show an error when a guess fails and keep the input for retrying
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 01:43:18 +01:00
leanderandClaude Opus 5.5 bcb8259489 Remove unsupported url option from the auth config
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 01:42:44 +01:00
leanderandClaude Opus 5.5 eece956c16 Use the correct default avatar for users without a discriminator
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 01:42:41 +01:00
leanderandClaude Opus 5.5 d7e9669382 Only request the identify scope from Discord
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 01:42:39 +01:00
leanderandClaude Opus 5.5 ecfa50799e Re-verify the paying member role every hour during a session
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 01:42:26 +01:00
leanderandClaude Opus 5.5 925d1a4593 Validate the guess request body
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 01:42:13 +01:00
leanderandClaude Opus 5.5 e09b2f981f Return an error instead of a wrong guess when the member lookup fails
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 01:42:05 +01:00
leanderandClaude Opus 5.5 6a3487e6da Share member list refreshes, fall back to stale cache and retry on Discord rate limits
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 01:41:54 +01:00
leanderandClaude Opus 5.5 7c37c4d6d5 Move member lookup to lib and remove duplicated types
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 01:41:38 +01:00
leanderandClaude Opus 5.5 43d1091ab2 Exclude .env files from the Docker build context
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 01:41:26 +01:00
leander 668a1ffd15 run linter 2026-10-31 01:31:20 +01:00
leander e4d10f06a5 upgrade all deps to their latest versions 2026-10-31 01:24:30 +01:00
leander dd5f3c7d06 upgrade docker image from node 20 to 26 2026-10-30 22:56:59 +01:00
leander e27ae55ac0 run npm audit fix 2026-10-30 22:56:35 +01:00
leander cfd6ebc6fb fix docker not building 2026-08-29 17:17:25 +02:00
leander de81e6be22 fix vulns 2026-08-29 17:10:05 +02:00
leander 4e044fde50 fix vulns 2026-03-23 15:18:04 +01:00
leander e7b41ca8e5 LET ME ENJOY MY VACATION IN PEACE STUPID FUCKING FRAMEWORK 2025-12-13 03:36:24 +01:00
leander 80d81eaf6f bump additional deps 2025-12-09 13:08:31 +01:00
leander 689b82a6d9 everyday I wake up to a new js-something vuln and I'm sick and tired of it
let me vacation in peacegit add .git add .
2025-12-09 13:07:13 +01:00
leander 5218df3ba0 add codeowners file 2025-07-10 15:31:42 +02:00
leander 0db02de98b add deply action 2025-07-10 15:20:47 +02:00
leander 86a6da3dbb change readme title 2025-06-22 13:30:22 +02:00
leander 6840c6340a add guess goal selector 2025-06-22 13:30:03 +02:00
leander d096be3357 fix duplicate displayname/nickname matching issue
the matching logic now handles cases where there are multiple people with the same nickname or global name
2025-06-22 13:10:43 +02:00
leander 7715db4029 add nextauth_url env var
make sure the oauth callback knows where to go
2025-06-22 02:49:10 +02:00
leander 277ecbd99a include env vars from .env when using docker compose 2025-06-22 02:42:00 +02:00
leander 9a09c40f22 automatically refocus text input field after submission 2025-06-22 02:40:03 +02:00
leander 7764d98f14 move auth handler and fix type issues 2025-06-22 02:37:21 +02:00
leander aa76b21282 fix translation typos and rephrase translations 2025-06-22 02:29:39 +02:00
leander 4322d0daf9 add button fade in animations on hover 2025-06-22 02:25:54 +02:00
leander b277745531 add discord member match data provider 2025-06-22 02:22:54 +02:00
leander 1def9d7cd5 add support for translated match descriptions 2025-06-22 02:20:27 +02:00
leander 5d90633688 rewrite readme for UiO Gaming fork 2025-06-22 02:09:45 +02:00
leander 86b4a8ab35 show loading state on guess submission 2025-06-22 02:09:23 +02:00