Hackathon Control Room for Organizers, Stage Screens, and Participants
hackTime is a hackathon control room for organizers, stage screens, and participants. It lets you create a timed event flow, launch a live countdown, broadcast announcements, and share a room code so teams can join the clock view instantly.
- Organizers who need a command center for multi-phase hackathons
- Stage or AV teams who need a clean public countdown screen
- Participants who want to join a room and follow the live schedule
- Create an organizer account and manage hackathon sessions
- Build a custom event flow with named phases and durations
- Launch a room with a 6-character room ID
- Pause, resume, skip, or stop a live event
- Send timed broadcast announcements to everyone in the room
- Open a dedicated stage view for projection screens
- Let participants join a room without creating an account
- Organizer dashboard:
/dashboard - Flow builder:
/flow - Login and guest join:
/login - Stage standby or active stage view:
/stageand/room/<ROOM_ID>/stage - Participant clock view:
/room/<ROOM_ID>/clock
- Experimental:
https://hackclock.vercel.app/ - Production:
https://hackclock.vercel.app/
hackTime is split into two apps:
hackclock/for the Next.js frontendbackend/for the Express and MongoDB API
cd hackclock
npm installcd backend
npm installCreate backend/.env:
MONGODB_URI=your_mongodb_connection_string
PORT=5000Create hackclock/.env.local:
NEXT_PUBLIC_API_URL=http://localhost:5000
NEXTAUTH_SECRET=replace_with_a_long_random_secret
# Optional: enable GitHub sign-in
GITHUB_ID=
GITHUB_SECRET=cd backend
npm run devThe API runs at http://localhost:5000.
cd hackclock
npm run devFor the live app, use:
- Experimental:
https://hackclock.vercel.app/ - Production:
https://hacktime.vercel.app/
- Open a deployed login page:
Experimental:
https://hackclock.vercel.app/loginProduction:https://hacktime.vercel.app/login - Create an account or sign in.
- Go to
/flowand create your hackathon. - Add your event name, dates, timezone, branding, and phases.
- Deploy the flow to generate a room ID.
- Use the dashboard to control the live room and send announcements.
- Open a deployed login page:
Experimental:
https://hackclock.vercel.app/loginProduction:https://hacktime.vercel.app/login - Choose
GUEST. - Enter a team name and the room ID.
- Join the room to open the live clock view.
- Open
/stageif you are signed in as the organizer with an active room. - Or open
/room/<ROOM_ID>/stagedirectly for a specific event.
- Participants can join without an account.
- Room IDs are generated automatically when a flow is deployed.
- Draft flows can be saved and launched later.
- MongoDB is required for local development.
.
├── backend/ # Express API, auth, room state, MongoDB models
├── hackclock/ # Next.js frontend for organizers, stage, and participants
├── LICENSE
└── README.md
Check that:
- the backend is running on port
5000 NEXT_PUBLIC_API_URLpoints to the backend- MongoDB is reachable from the backend
Check that:
NEXTAUTH_SECRETis set inhackclock/.env.local- the backend is running
- your account exists if using email and password login
Check that:
- the room ID is correct
- the hackathon was deployed, not just saved as a draft
- the backend database contains the room record
This project is licensed under the MIT License.