Check the Website here.
Check the websocket server repository here.
Welcome to Buzzr, where learning meets excitement! Join live quiz battles, create personalized challenges, and connect with peers in real-time. Buzzr offers an engaging learning experience for users of all levels. Create an account, customize your profile, and dive into the world of quizzes today. Get ready to buzz with excitement on Buzzr!
-
User Authentication: Secure Google OAuth Sign In system using Next-Auth.
-
Quiz Creation: Create new buzzrs(quizzes) and add questions to it.
-
Create Quiz by AI: Powered by Gemini, this feature lets you create a whole quiz and all its question via a prompt.
-
Host a Buzzr: Host a new Game Session for the quiz.
-
Real-time Updates: Get Realtime player and presenter interations.
-
Player Management: Manage players in a game through presenter, system to kick unwanted players.
-
Leaderboard: See the leaderboard after each question round.
- Clone the repository:
git clone https://github.com/alanansari/buzzr.git
To run the server, you need to have NodeJS installed on your machine. If you don't have it installed, you can follow the instructions here to install it.
- Install the dependencies:
npm install
- Setup .env file in base directory:
NEXTAUTH_URL = "http://localhost:3000"
NEXTAUTH_SECRET = "<random_string>"
GOOGLE_CLIENT_ID = ""
GOOGLE_CLIENT_SECRET = ""
DATABASE_URL="<supabase_db_uri>"
DIRECT_URL="<supabase_direct_uri>"
UPSTASH_REDIS_URL=""
UPSTASH_REDIS_TOKEN=""
NEXT_PUBLIC_SOCKET_URL="<websocket_server_url>"
RATELIMIT="<ON/OFF>"
-
Connect to the Server for websockets:
- Go through this: https://github.com/alanansari/buzzr-server
- Add the NEXT_PUBLIC_SOCKET_URL=http://localhost:[PORT]
- PORT is where the socket server is running
-
Run on localhost:
npm run dev
You can access the endpoints from your web browser following this url
http://localhost:3000