Browser-based interactief workshop spel waarbij deelnemers fysiek kiezen tussen twee stellingen die op een beamer worden getoond.
## Project Overzicht
**Type:** Hobby project / Workshop tool
**Status:** Volledig functioneel v1.0
**Gemaakt:** 2025-11-03
### Wat doet het?
Een presentatie tool voor workshops waar deelnemers tussen twee stellingen moeten kiezen. De facilitator toont stellingen op een beamer, een timer loopt visueel rond het scherm, en daarna zie je de stellingen grayed out terwijl mensen fysiek naar links/rechts bewegen.
- Startscherm met groene "Start IJsbreker" knop toegevoegd
- Timer begint nu pas na klik op startknop (voorheen automatisch)
- Gebruiker heeft volledige controle over startmoment presentatie
- Spatiebalk werkt op startscherm voor snelle start
**Gewijzigde bestanden:**
-`index.html` - Startscherm HTML toegevoegd, statementScreen krijgt .hidden class bij laden
-`style.css` - Styling voor start-screen en start-button (groene knop met hover effecten)
-`app.js` - Flow aangepast: nieuwe functies `showStartScreen()` en `startGame()`, event listeners voor startButton, spatiebalk werkt nu op startscherm EN overlay
-`config.json` - Kleine config aanpassingen
**Waarom:**
Voorheen begon de timer meteen bij het laden van de pagina, wat onhandig is bij voorbereiding van een workshop presentatie. Nu kan de facilitator in alle rust de browser op de beamer zetten voordat het spel daadwerkelijk start.
**Status:**
- Feature volledig werkend en getest
- Klaar voor workshop gebruik met betere controle over presentatie flow
-`app.js` - Statement counter logica toegevoegd, laatste stelling flow aangepast
-`index.html` - Statement counter div toegevoegd
**Waarom:**
Tijdens gebruik bleek de knop onderaan moeilijk leesbaar door de overlay, en de laatste stelling miste de overlay fase waardoor deelnemers geen tijd hadden om te kiezen. Counter helpt facilitator bij het bijhouden van voortgang.
**Status:**
- Alle wijzigingen getest en werkend
- Gecommit en gepusht naar remote (commit e1f1659)
-`config.json` - Blijft actieve configuratie voor presentatie modus
**Nieuwe bestanden:**
-`sets.json` - Database met alle workshop sets (wordt automatisch aangemaakt)
**Hoe het werkt:**
1. Editor openen → Zie dropdown met alle sets
2. Set selecteren → Laadt stellingen en instellingen van die set
3. Bewerken en opslaan → Overschrijft huidige set
4. "Opslaan als Nieuwe Set" → Maakt nieuwe set aan met custom naam
5. Presentatie starten → Gebruikt laatst opgeslagen set uit config.json
**Data structuur sets.json:**
```json
{
"sets": [
{
"id": "default",
"name": "Standaard Set",
"config": { /* complete config */ }
},
{
"id": "set-1234567890",
"name": "PKM Workshop 2025",
"config": { /* complete config */ }
}
],
"activeSetId": "default"
}
```
**Waarom:**
Facilitators kunnen nu meerdere workshop configuraties voorbereiden (bijv. verschillende doelgroepen, thema's) en eenvoudig tussen sets wisselen zonder telkens stellingen handmatig te moeten aanpassen.
- **Fullscreen knop:** Semi-transparante knop rechtsonder (naast counter) om presentatie in volledig scherm te tonen
- **Toggle functionaliteit:** Klik op knop om fullscreen te activeren/deactiveren
- **Visuele feedback:** Icoon draait 180° wanneer in fullscreen modus
- **ESC toets support:** Browser standaard ESC werkt om fullscreen te verlaten
- **Glasmorphism styling:** Moderne semi-transparante knop met blur effect
**Gewijzigde bestanden:**
-`index.html` - Fullscreen knop met SVG icoon toegevoegd
-`style.css` - Styling voor fullscreen button met hover states en is-fullscreen class
-`app.js` - toggleFullscreen() functie, event listeners voor knop en fullscreenchange
-`README.md` - Documentatie bijgewerkt met fullscreen instructies
-`CLAUDE.md` - Features lijst en Session History bijgewerkt
**Waarom:**
Voor workshop presentaties is het belangrijk dat de browser UI (adresbalk, tabs, bookmarks) niet zichtbaar is op de beamer. De fullscreen knop maakt het eenvoudig om de presentatie volledig scherm te tonen zonder browser elementen.
**Hoe het werkt:**
- Gebruikt Fullscreen API (`document.documentElement.requestFullscreen()`)
- Knop blijft zichtbaar in fullscreen modus voor gemakkelijke toggle
- Event listener voor `fullscreenchange` zorgt voor correcte state sync bij ESC toets
- Icoon rotatie geeft visuele feedback over huidige fullscreen state
**Status:**
- Feature volledig werkend en getest
- Documentatie bijgewerkt (README.md en CLAUDE.md)