A buzzer-app with a server and a client. Made with React, NodeJS and Socket.io. Useful for quizzes and games for your parties like blind-test.
Requires Node.js 20.19+.
git clone https://github.com/arthur-mdn/buzzer-app.git
cd buzzer-appcd server
npm installDuplicate
.env.exampleto.envand setDB_URI,CLIENT_URL=http://localhost:5174, and a strongJWT_SECRET(32+ characters). ChangingJWT_SECRETinvalidates existing tokens. LeaveADMIN_PASSWORDempty to disable admin registration. In production, setCLIENT_URL=https://buzzer-app.fr(CORS). Known placeholder secrets are rejected at boot.
Create a MongoDB database and update
DB_URIin the server.envfile.
cd client
npm installDuplicate
.env.exampleto.envand update the environment variables. The Vite app listens on port 5174.
cd server
node server.jscd client
npm run devOpen http://localhost:5174 in your browser.
docker compose up --buildMongoDB is not published on the host in development; the API reaches it on the Docker network only.