Skip to content

A robust, real-time video conferencing application built with Next.js, Stream, Clerk, and Tailwind CSS. This app offers seamless video and audio communication, allowing users to connect and collaborate effortlessly.

Notifications You must be signed in to change notification settings

prakharsingh-74/LinkUp

 
 

Repository files navigation

Video Conferencing Web App

A fully-featured video conferencing web application built using Next.js, TypeScript, Clerk for authentication, and Stream for real-time video and chat capabilities.

🚀 Features

  • Real-Time Video Conferencing: Connect and communicate with multiple users in real-time.
  • User Authentication: Secure user management with Clerk.
  • Instant Messaging: Real-time chat during video sessions using Stream.
  • Responsive UI: Optimized for both desktop and mobile devices.
  • Scalable: Built with Next.js and TypeScript for maintainability and performance.

🛠️ Tech Stack

  • Next.js: Framework for server-rendered React applications.
  • TypeScript: Type-safe development for scalable code.
  • Clerk: User authentication and management.
  • Stream: Real-time messaging and video API.

📦 Installation

  1. Clone the repository:

    git clone https://github.com/yourusername/your-repo-name.git
    cd your-repo-name
    
  2. Install dependencies: npm install ##OR yarn install

  3. Set up environment variables: Create a .env.local file in the root of your project and add the following variables: NEXT_PUBLIC_CLERK_FRONTEND_API= CLERK_API_KEY= STREAM_API_KEY= STREAM_SECRET=

  4. Run the development server: npm run dev

    or

    yarn dev

Open http://localhost:3000 in your browser to see the app in action.

📝 Usage

  1. Sign up / Log in: Users are authenticated through Clerk.
  2. Join / Create a Room: Start or join a video conference.
  3. Chat: Send and receive messages in real time during the call.

📁 Project Structure

Here's an overview of the project's structure:

├── components # Reusable UI components ├── pages # Next.js pages and API routes ├── lib # Utility functions and external library setups ├── public # Public assets ├── styles # Global styles └── README.md # Project documentation

🧩 Key Libraries

@clerk/nextjs: For integrating Clerk's authentication in Next.js. stream-chat-react: Components for the chat feature. next-auth: Optional, if needed for additional auth setups.

⚙️ Deployment

To deploy this project: Set up your environment variables in your deployment platform.

About

A robust, real-time video conferencing application built with Next.js, Stream, Clerk, and Tailwind CSS. This app offers seamless video and audio communication, allowing users to connect and collaborate effortlessly.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 97.2%
  • CSS 2.5%
  • JavaScript 0.3%