DevnTalk is a web application designed for seamless video communication. It includes features such as video calling, user authentication, and various UI components to enhance user experience.
- Video Calling: Powered by @stream-io/video-react-sdk.
- User Authentication: Managed by @clerk/nextjs.
- Responsive UI: Built with modern React components and Next.js.
- Navigation: Sidebar with links to Home, Upcoming, Previous, Recordings, and Personal Room.
- Error Handling: Custom error handling for video call functionalities.
-
Clone the repository:
git clone https://github.com/yourusername/devtalk.git cd devtalk
-
Install dependencies:
npm install
-
Set up environment variables:
Create a
.env.local
file in the root directory and add your environment variables.NEXT_PUBLIC_CLERK_FRONTEND_API=<your-clerk-api> CLERK_API_KEY=<your-clerk-api-key> NEXT_PUBLIC_STREAM_API_KEY=<your-stream-api-key> STREAM_SECRET_KEY=<your-stream-secret-api>
-
Run the development server:
npm run dev
Open http://localhost:3000 with your browser to see the result.
- Home Page: Displays the current date and time.
- Upcoming: Shows upcoming meetings.
- Previous: Lists previous meetings.
- Recordings: Access to recorded meetings.
- Personal Room: Personal video call room.
.
├── components
│ ├── Alert.tsx
│ ├── EndCallButton.tsx
│ ├── MeetingCard.tsx
│ ├── MeetingRoom.tsx
│ ├── Sidebar.tsx
│ └── ui
│ ├── button.tsx
│ ├── card.tsx
│ ├── dialog.tsx
│ └── sheet.tsx
├── pages
│ ├── index.tsx
│ ├── upcoming.tsx
│ ├── previous.tsx
│ ├── recordings.tsx
│ └── personal-room.tsx
├── public
│ ├── icons
│ └── images
├── .env.local
├── .gitignore
├── package.json
├── README.md
└── next.config.js