Repolode
Ralex91

Ralex91/Razzia

A self-hosted, open-source quiz platform for running live quizzes at smaller events, deployable with Docker.

Open-source alternative to:Kahoot

Stars
1,100
Forks
70
Open issues
31
Last commit
4 days ago

What is it?

Razzia is a quiz platform that you host on your own server, aimed at smaller events. A manager interface lets a host create a game, share a room code with participants, and start the session once players have joined. Participants join through a browser at the game URL and answer questions during the round.

Quizzes and results are stored as files in a local config folder, which persists across updates. The project can be run with Docker Compose or Docker, or installed directly from source with Node.js 24+ and pnpm. The manager is protected by a password set through an environment variable, and the README documents running the app behind a reverse proxy such as Traefik, Nginx, or Caddy.

The project also publishes a WebSocket protocol and an HTTP API, so developers can build custom clients, such as a physical buzzer based on an ESP32.

Key features

  • 01Host live quiz games with a manager interface and room codes for players.
  • 02Store quizzes and results as local files that persist across updates.
  • 03Deploy with Docker or Docker Compose, or run from source with Node.js and pnpm.
  • 04Protect the manager interface with a password set in an environment variable.
  • 05Run behind common reverse proxies such as Traefik, Nginx, or Caddy.
  • 06Build custom clients through a documented WebSocket protocol and HTTP API.

Use cases

  • Running a quiz or trivia round at a team meeting, class, or small party.
  • Hosting a self-run survey or learning game on a private server.
  • Building a physical buzzer system that connects to the quiz server over WebSocket.

Quick start

  1. 1

    Create a compose.yml file with the Razzia service definition

  2. 2

    Create a .env file with MANAGER_PASSWORD set

  3. 3

    Start the service with Docker Compose

    docker compose up -d

Things to know

  • Requires Node.js 24+ and pnpm 10.16+ if you run it without Docker.

In collections

Topics

FAQ

What is Razzia?
A self-hosted, open-source quiz platform for running live quizzes at smaller events, deployable with Docker. Razzia is a quiz platform that you host on your own server, aimed at smaller events. A manager interface lets a host create a game, share a room code with participants, and start the session once players have joined. Participants join through a browser at the game URL and answer questions during the round.
Is Razzia free to use? What license does it have?
Razzia is open source under the MIT license. Check the license terms before using it in commercial products.
Is Razzia still maintained?
Actively maintained. The last commit to Razzia was on Nov 3, 2026.
What can I use Razzia for?
Running a quiz or trivia round at a team meeting, class, or small party. Hosting a self-run survey or learning game on a private server. Building a physical buzzer system that connects to the quiz server over WebSocket.
How do I install Razzia?
Create a compose.yml file with the Razzia service definition Create a .env file with MANAGER_PASSWORD set Start the service with Docker Compose: docker compose up -d
Where can I get Razzia?
The source code and installation instructions are on GitHub: https://github.com/Ralex91/Razzia

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects