.. | ||
data | ||
public | ||
build.sh | ||
Containerfile | ||
package.json | ||
README.md | ||
server.js |
Live Audience Response System
Ett webbbaserat system för att samla in svar från en live-publik och visa resultaten i realtid. Systemet är byggt med Node.js, Socket.IO och SQLite, och kan köras i en Podman-container.
Funktioner
- Live-formulär: Deltagare kan välja mellan förutbestämda alternativ eller lägga till egna
- Flerval: Användare kan välja flera alternativ
- Dynamiska alternativ: Nya alternativ som läggs till av användare blir automatiskt tillgängliga för andra
- Live-resultat: Admin-panel med realtidsuppdateringar av resultat
- QR-kod: Genereras automatiskt för enkel delning av formuläret
- Responsiv design: Fungerar på både desktop och mobil
- Persistent data: SQLite-databas för säker datalagring
Teknisk stack
Backend
- Node.js med Express.js
- Socket.IO för realtidskommunikation
- SQLite för datalagring
- QR Code generator för QR-kodgenerering
Frontend
- Vanilla JavaScript med Socket.IO client
- Chart.js för datavisualisering
- Responsiv CSS med modern design
Container
- Podman (eller Docker) för containerisering
- Multi-stage build för optimerad bildstorlek
Kör applikationen
podman run -d --restart=on-failure --name aeroklubben-arbetsgrupp-live -p 7000:3000 -v ./data:/app/data:Z aeroklubben-arbetsgrupp-live
Användning
För deltagare
- Besök huvudsidan:
https://aeroklubben.hostux.fr
- Välj ett eller flera alternativ
- Lägg till egna alternativ om önskat
- Skicka svaret
För administratör
- Besök admin-panelen:
https://aeroklubben.hostux.fr/admin
- Visa QR-koden för deltagare
- Följ live-resultat i realtid
- Se statistik och diagram
API-endpoints
GET /
- HuvudformulärGET /admin
- Admin-panelGET /api/options
- Hämta tillgängliga alternativGET /api/results
- Hämta resultatPOST /api/submit
- Skicka svarGET /api/qr
- Hämta QR-kod