Over deze pool

Een hobbyproject — gebouwd in één zit op een doorsnee dinsdag-ochtend.

Live teller — sinds de eerste regel code

2u 16m 02s

Telt op vanaf 5 mei 2026, 08:42 (NL-tijd) — het tijdstip van de allereerste git-commit op deze repo.

Hoe het is gemaakt

Onno schreef een specificatie van wat de pool moest kunnen, zonder in te vullen hoe of waar het zou draaien. Hij gaf die spec aan Claude (Opus 4.7) binnen Claude Code, draaiend op zijn eigen Plesk-VPS. Claude besloot welke libraries te gebruiken, schreef de code, installeerde MariaDB, zette Apache als reverse proxy om PM2 op poort 3102, regelde een Let's Encrypt-cert, en richtte de cron in voor de 5-minuten-sync. Onno keek mee, gaf feedback ("die plus-knop valt van mijn iPhone af"), Claude paste aan. Geen IDE-werk, geen handmatige HTML.

Door wie

  • Onno Karman — opdrachtgever, productontwerp, feedback, host
  • Claude (Anthropic, Opus 4.7) — schreef de code, deployde, fixte bugs

Tech stack

Next.js 16App-framework, App Router, Server Components
Tailwind CSS v4Styling
TypeScriptType-veilige code
Drizzle ORMDatabase-laag, type-safe queries
MariaDB 10.11Persistentie (Plesk-managed)
ResendMail-magic-code login
football-data.orgWedstrijdschema, uitslagen, topscorers
api-football.comSquads (gratis tier 100/dag)
lipis/flag-icons + circle-flagsSVG-vlaggen via jsDelivr
lucide-reactIcon-set
PM2 + Node 22 LTSProcess manager op de VPS
Apache + PleskReverse proxy, Let's Encrypt SSL

Hosting

De app draait op Onno's eigen Plesk Obsidian-server (Ubuntu 24.04 LTS). Subdomein wk.onnoka.com via Apache met een Let's Encrypt-certificaat, proxypass naar een Node-proces op localhost-poort 3102 (PM2). Auto-restart na reboot via een systemd-unit. Database: MariaDB lokaal via Plesk.

Open source-afhankelijkheden

Alle gebruikte libraries zijn open source onder MIT, Apache 2.0 of vergelijkbare licenties. Vlag-SVGs van circle-flags en lipis/flag-icons.