|
All checks were successful
Build and Publish / build (push) Successful in 1m4s
Spawn and drift ranges pulled toward the middle of the field so the teammate run stays central. The mist fade-in now kicks off ~450ms before the drift ends, so the ball gets swallowed by fog mid-run instead of freezing first. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .forgejo/workflows | ||
| .vscode | ||
| data | ||
| messages | ||
| project.inlang | ||
| scripts | ||
| src | ||
| static | ||
| .gitignore | ||
| add_new_strings.cjs | ||
| CLAUDE.md | ||
| docker-compose.yml | ||
| Dockerfile | ||
| GEMINI.md | ||
| nginx.conf | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
| renovate.json | ||
| simulate.ts | ||
| svelte.config.js | ||
| tsconfig.json | ||
| vite.config.ts | ||
BigFiveNEC
Een interactieve persoonlijkheidsquiz (Nederlands) die gebruikers koppelt aan NEC Nijmegen-spelers op basis van het Big Five persoonlijkheidsmodel.
Over het project
De quiz stelt 5 vragen (één per categorie: lifestyle, sociaal, cultuur, emotie, identiteit), waarin 3 willekeurige mini-games zijn verweven. Het resulterende Big Five profiel wordt vergeleken met de NEC-selectie via een geavanceerd scoringsalgoritme.
Scoringsformule
De match wordt berekend op basis van:
- Cosine Similarity (75%): Vergelijkt jouw Big Five profiel met dat van de spelers. We gebruiken een weging die uitschieters (extreme scores) zwaarder laat meetellen en passen een cubische macht toe om de beste matches extra te belonen.
- Trigger Overlap (25%): Kijkt naar specifieke trefwoorden die uit je antwoorden naar voren komen.
Features
- Interactieve Quiz: Een combinatie van psychologische vragen en actieve games.
- Tactiekbord: Bekijk de hele selectie, stel je eigen ideale 11 samen via drag-and-drop en bekijk spelerdetails.
- Dynamic Scoring: Je keuzes in minigames beïnvloeden direct je persoonlijkheidsprofiel.
Mini-games & Big Five integratie
Tijdens de quiz speel je drie willekeurige minigames. De resultaten hiervan veranderen je Big Five profiel rechtstreeks:
- Sprinttest (StaminaTap) — Zo snel mogelijk tikken. Verhoogt Consciëntieusheid en Extraversie.
- Schiettraining (PrecisionShot) — Klik op de bewegende doelen. Verhoogt Consciëntieusheid.
- Reflextest — Klik de bal zodra hij verschijnt. Verhoogt Openheid en verlaagt Neuroticisme.
- Moreel Dilemma (CardSwipe) — Maak tactische of eerlijke keuzes. Beïnvloedt Agreeableness en Consciëntieusheid.
- De Blinde Pass (BlindPass) — Onthoud posities en pass in de mist. Verhoogt Consciëntieusheid en Openheid.
Via de /settings pagina kunnen minigames naar wens in- of uitgeschakeld worden.
Ontwikkeling
npm install
npm run dev # Dev server op poort 5173
npm run build # Bouw naar build/
npm run preview # Preview van de productie-build
npm run check # TypeScript/Svelte type checking
Docker
Image
De productie-image is beschikbaar op:
git.midasvo.nl/midas/bigfivenec:latest
De app wordt geserveerd via nginx op poort 80.
docker-compose
Zie docker-compose.yml in de root van dit project, of gebruik onderstaand voorbeeld:
services:
bigfivenec:
image: git.midasvo.nl/midas/bigfivenec:latest
ports:
- "8080:80"
restart: unless-stopped
Technische stack
- SvelteKit met Svelte 5 runes (
$state,$derived,$props) - Paraglide-JS voor in-code type-safe i18n (NL/EN). Tip: Gebruik de "Sherlock" VS Code extensie (
inlang.vs-code-extension) om de tekst achter vertaalsleutels zoalsm.ui_welcome_title()direct leesbaar in de editor te zien. - Static adapter — gedeployed als SPA met
fallback: 'index.html' - nginx:alpine als productie-webserver
- Gebouwd en gepubliceerd via Forgejo Actions CI/CD
Kleurenpalet
| Token | Kleur |
|---|---|
--nec-red |
#E2001A |
--nec-green |
#00843D |
--nec-black |
#1A1A1A |
--nec-gold |
#C5A200 |