Skip to content

Why Quicz?

  • Self-hosted by design. Everything runs in one Node process with a SQLite file. No managed service, no external API, no telemetry.
  • Offline-friendly. Works on a laptop on a LAN with no internet connection — useful for workshops in rooms with flaky Wi-Fi.
  • No accounts. Participants type a code and a display name. That's it.
  • Small surface area. One binary, one port, one database file. Easy to audit, easy to back up, easy to throw away.
  • Open. AGPL-licensed — if you fork it and run it as a service, your users get the source.

Features

  • Single-choice, multiple-choice, and binary (true/false) questions
  • Optional per-question time limit with automatic lock
  • Live answer-count indicator for participants
  • Admin-controlled reveal: distribution first, correct answer on demand
  • Per-participant correctness delivered privately (no leaking others' answers)
  • Final scoreboard with top-10 cut and "where am I" indicator below the cut
  • CSV export of all responses per session
  • Keyboard navigation for participants (arrows + Enter)
  • Light/dark theme

Stack

Framework Language Database ORM Realtime Styling Charts Runtime
Next.js 15 (App Router) TypeScript (strict) SQLite via better-sqlite3 Drizzle ORM Socket.IO 4 Tailwind CSS v4 Recharts Node.js 20+