This is a Next.js project bootstrapped with create-next-app.
First, run the development server:
bun devOpen http://localhost:3000 with your browser to see the result.
You can start editing the page by modifying app/page.tsx. The page auto-updates as you edit the file.
This project uses next/font to automatically optimize and load Geist, a new font family for Vercel.
To learn more about Next.js, take a look at the following resources:
- Next.js Documentation - learn about Next.js features and API.
- Learn Next.js - an interactive Next.js tutorial.
You can check out the Next.js GitHub repository - your feedback and contributions are welcome!
The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.
Check out our Next.js deployment documentation for more details.
This app provides a simple online meeting experience powered by LiveKit.
Features:
- Join or create rooms by entering a room name and username
- Automatic camera and microphone publishing
- Screen sharing
- In-room chat
- Shareable room URL: /room/{room}?name={username}
- LiveKit server running locally on ws://localhost:7880
- Docs: https://docs.livekit.io
- Bun runtime (https://bun.sh)
Create a .env.local file in the project root:
LIVEKIT_API_KEY=your_api_key
LIVEKIT_API_SECRET=your_api_secret
# Optional (defaults to ws://localhost:7880)
LIVEKIT_WS_URL=ws://localhost:7880
The backend API route at /api/token will mint an access token for a given room & username using these credentials.
bun install
bun dev
- On the home page, enter:
- Room: any string (e.g., team-sync)
- Username: your display name
- Click Join Room. You will be taken to /room/{room}?name={username} and connected to LiveKit.
- Share the room URL with others so they can join the same room with their own name.
- In-room controls allow toggling camera/mic, starting/stopping screen share, and chatting.
- The token API requires LIVEKIT_API_KEY and LIVEKIT_API_SECRET to be set; these come from your LiveKit instance.
- The Video/Audio, Screen Share, and Chat are provided by @livekit/components-react.
- This project uses Bun; use bun install/dev/start instead of npm.