# quizlive
**Repository Path**: ccnudhj/quizlive
## Basic Information
- **Project Name**: quizlive
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2026-09-03
- **Last Updated**: 2026-09-03
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# QuizLive — Open Source Real-Time Quiz App (Kahoot / Slido / Mentimeter Alternative)
[](docs/deploy-free.md)
**Open source. Self-hosted. No subscriptions. No player accounts. Unlimited questions.**
QuizLive is a free, open-source, real-time multiplayer quiz and trivia platform built with React and Firebase. Run it on your laptop for a classroom, deploy it on a server for a public event, or self-host it however you want. You own the code, you own the data, you keep the players.
> Looking for an **open source Kahoot alternative**? A **free Slido alternative**? A **self-hosted Mentimeter** for classrooms, conferences, town halls, or trivia nights? A **live polling tool** without a paywall? This is it.
**Use it for:** classroom quizzes · school trivia · corporate town halls · conference Q&A · pub trivia · live polling · audience response · community quiz nights · onboarding games · workshop icebreakers.





---
## 🆚 Why QuizLive?
| | QuizLive | Kahoot | Slido |
|--|---------|--------|-------|
| Open source | ✅ Yes | ❌ No | ❌ No |
| Self-hostable | ✅ Yes | ❌ No | ❌ No |
| No monthly subscription | ✅ Free up to ~100 players¹ | ❌ $17+/mo | ❌ $15+/mo |
| No player accounts | ✅ Yes | ✅ Yes | ✅ Yes |
| No vendor lock-in | ✅ Your data | ❌ Their servers | ❌ Their servers |
| Database cost at scale | ⚠️ Firebase pay-as-you-go² | Included | Included |
| Works on local network | ✅ Offline-capable | ❌ Requires internet | ❌ Requires internet |
| Unlimited questions | ✅ Yes | ⚠️ Paid plan | ⚠️ Paid plan |
¹ Firebase free tier (Spark) covers ~80–100 concurrent players at $0/month. Larger events need the pay-as-you-go plan — see [FIREBASE-COSTS.md](FIREBASE-COSTS.md).
² Firebase Firestore is billed per read/write at scale. QuizLive itself will always be free; the database cost is yours, going directly to your own Firebase project.
---
## ✨ What it does
- 📱 Players join from their phones — scan a QR or visit a URL, no account needed
- 🖥️ Host screen runs on the projector — live answer chart, timer, leaderboard podium
- 🎛️ Admin panel controls everything — questions, game flow, QR toggle, session history
- ⚡ Scores are time-weighted — faster correct answers earn more, computed from answers so they can't be tampered with ([how scoring & ranking work →](SCORING.md))
- 📋 Full session history saved automatically — download any past leaderboard as CSV
- 🌐 Works offline on a local network — no internet required
---
## 📸 Screenshots
Admin panel (left) + host projector screen with QR join code (right)
Player question screen — tap to answer, faster = more points
Live gameplay — player phones, admin controls, host answer chart
Leaderboard phase — player rank cards + host podium
Session history — past results with CSV export
---
## 🚀 Getting Started
### ☁️ Recommended — Deploy to Vercel (no git needed)
[](https://vercel.com/new/clone?repository-url=https://github.com/sivasooryagiri/quizlive&env=VITE_FIREBASE_API_KEY,VITE_FIREBASE_AUTH_DOMAIN,VITE_FIREBASE_PROJECT_ID,VITE_FIREBASE_STORAGE_BUCKET,VITE_FIREBASE_MESSAGING_SENDER_ID,VITE_FIREBASE_APP_ID,VITE_JOIN_URL&envDescription=Firebase%20config%20from%20your%20Firebase%20project%20settings&envLink=https://github.com/sivasooryagiri/quizlive/blob/main/docs/deploy-free.md&project-name=quizlive&repository-name=quizlive)
Click the button → Vercel clones the repo to your GitHub and walks you through the env vars. **You only need to set up Firebase first** (5 minutes) — [full guide here](docs/deploy-free.md).
> 📖 **Docs:** [Scoring & Ranking](SCORING.md) · [Security & Threat Model](SECURITY.md) · [Firebase Costs](FIREBASE-COSTS.md)
---
### Other options
| Method | Best for | Where it runs |
|--------|----------|---------------|
| [🔥 **Firebase + Vercel** ⭐](docs/deploy-free.md) | Cloud, no server to manage | Vercel CDN (global) |
| [🏠 Local + Private Network](docs/deploy-local.md) | Classroom, office, same Wi-Fi | Your laptop |
| [☁️ AWS EC2](docs/deploy-aws.md) | Full control, your own server | AWS instance |
| [🐳 Docker](docs/deploy-docker.md) | Self-hosted, clean environment | Any container host |
> ⭐ **Firebase + Vercel is the only setup tested end-to-end.** Local / AWS / Docker should work (same code, different host) but aren't officially verified.
> **All options use Firebase Firestore** for the real-time database. Free tier covers ~80–100 concurrent players. For larger events → [FIREBASE-COSTS.md](FIREBASE-COSTS.md).
---
### ⚡ Quickstart (localhost, developers only)
```bash
git clone https://github.com/sivasooryagiri/quizlive.git
cd quizlive
npm install
cp .env.example .env
# fill in your Firebase config
npm run dev
```
Open `http://localhost:5173`
> ⚠️ **Two steps in Firebase Console required before login + security work:**
> 1. **Authentication** → add user with email **`admin@quizlive.internal`** + your chosen password
> 2. **Firestore → Rules** tab → paste contents of [`firestore.rules`](firestore.rules) → Publish
>
> Full guide → [docs/deploy-local.md](docs/deploy-local.md)
---
## 🗺️ Pages
| Path | Access | Purpose |
|------|--------|---------|
| `/` | Open — no login needed | Join and answer on their phones |
| `/host` | Open — meant for the projector/big screen | Live question display, timer, leaderboard |
| `/admin` | Admin password required | Questions, game control, history, QR toggle |
| `/about` | Open — no login needed | About the project and builder |
---
## 👥 Capacity
**QuizLive itself is $0 — always.** No license, no subscription, no per-player fee. Code is yours, free forever.
The only moving part with a meter on it is **Firebase Firestore** (the real-time database). Google runs Firebase, not QuizLive — so any database cost goes directly to your own Firebase project, not to us.
- ✅ **Firebase free tier (Spark)** handles **~80–100 concurrent players** at $0/month — fits classrooms, small offices, community quizzes, most events.
- 📈 If you outgrow that (hundreds of players, dozens of sessions/day), you'd switch your Firebase project to the pay-as-you-go plan.
> Heavy usage? Hosting hundreds of players or running this for a big organization? **Read [FIREBASE-COSTS.md](FIREBASE-COSTS.md)** for the full breakdown — free-tier sessions per day by player count × question count, paid pricing bands, and how to set a budget cap so you never get a surprise bill.
---
## 🛠️ Tech stack
- **Frontend** — React 18, Vite, Tailwind CSS, Framer Motion
- **Database** — Firebase Firestore (real-time listeners)
- **Auth** — Firebase Authentication (admin), no player accounts
- **Hosting** — Vercel (or self-hosted)
- **Charts** — Recharts (answer bar chart)
- **QR** — qrcode.react
---
## ⚖️ License & use
Open source. Free to use, modify, and self-host.
**Not for commercial or monetary use.** Do not sell access, charge players, bundle into a paid product, or use as a revenue-generating service. Built to make quizzes free and accessible — keep it that way.
Personal use, education, internal events, community quizzes — all fine.
---
## 🗓️ Roadmap
Things planned or worth building next:
**🎨 Presentation themes**
Multiple visual themes for the host/projector screen — dark, light, high-contrast, branded. Selectable per session from the admin panel.
**💬 Room mood / word cloud**
Players type any word during a session. Words appear as floating bubbles on the host screen — the more a word is typed, the bigger its bubble. A lightweight way to feel the room before or between questions.
**More ideas worth adding**
- [ ] 🖼️ Image questions — attach an image to a question
- [ ] 👥 Team mode — group players into teams, score aggregated
- [ ] 🔢 Custom scoring — let admin set points per question
- [ ] ⏱️ Timed lobby — auto-start after countdown
- [ ] 📥 Question import — paste a JSON or CSV to bulk-add questions
- [ ] 🔔 Webhook on session end — post results to Slack, Discord, or a URL
---
## 🔍 Use cases
- 🏫 **Teachers** — run classroom quizzes, no Kahoot subscription needed
- 🏢 **Teams** — replace Slido for internal events and town halls
- 🎉 **Events** — trivia nights, conferences, community meetups
- 🖥️ **Self-hosters** — full control, runs on your own hardware
- 🌐 **Offline use** — works on a local network with no internet
---
## 👤 About
Built by [SivaSoorya G.R](https://deadtechguy.fun) — ML/DL creator, co-founder of Soluto. Opened this up so anyone can run a quiz without a paywall or a vendor in the way.
→ [deadtechguy.fun](https://deadtechguy.fun) · [GitHub](https://github.com/sivasooryagiri) · 📧 [dtg@soluto.in](mailto:dtg@soluto.in)
---
## 🤖 Build credits
This release was built with [Claude Code](https://claude.com/claude-code) using **Claude Sonnet 4.6** and **Claude Opus 4.7**.
---
**Topics:** quiz · trivia · kahoot-alternative · slido-alternative · mentimeter-alternative · open-source-quiz · self-hosted · real-time · multiplayer · classroom · live-polling · audience-response · firebase · react · vite · tailwindcss · free-quiz-app · no-subscription