leander and Claude 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
leander and Claude 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
leander and Claude 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
leander and Claude 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
leander and Claude 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
leander and Claude 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
leander and Claude 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
leander and Claude 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
leander and Claude 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
leander and Claude 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
leander and Claude 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
leander and Claude 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
leander and Claude 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
leander and Claude 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
leander and Claude 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
leander and Claude 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
leander and Claude 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
leander and Claude 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
leander and Claude 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
leander and Claude 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
leander and Claude 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
leander and Claude 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
leander and Claude 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
leander and Claude 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