FlashFlow is an advanced video conferencing application that mirrors the functionality of Zoom, crafted using the latest web technologies. It ensures a smooth, secure, and intuitive experience for users. The application is built with Next.js and TypeScript, integrating GetStream for real-time communication, Clerk for authentication, Tailwind CSS and shadcn for elegant styling, and react-hot-toast for dynamic notifications.
- Real-time Video Conferencing: Delivering high-definition video and crystal-clear audio using GetStream.
- Screen Sharing: Facilitate seamless collaboration by sharing your screen with participants.
- Secure Authentication: Robust user authentication and management via Clerk.
- Adaptive Design: Visually appealing and responsive interface created with Tailwind CSS and shadcn.
- Interactive Notifications: Informative and interactive notifications powered by React Hot Toast.
- Efficient User Management: Easily create, join, and manage meetings with an intuitive interface.
- Frontend Framework: Next.js with TypeScript
- Real-time Communication: GetStream
- Authentication: Clerk
- Styling: Tailwind CSS, shadcn
- Notifications: React Hot Toast
Follow these steps to set up and run FlashFlow locally:
-
Clone the Repository:
git clone https://github.com/yourusername/flashflow.git cd flashflow
-
Install Dependencies:
npm install
-
Configure Environment Variables: Create a
.env.local
file in the root directory and add the following environment variables:NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY= CLERK_SECRET_KEY= NEXT_PUBLIC_CLERK_SIGN_IN_URL=/sign-in NEXT_PUBLIC_CLERK_SIGN_UP_URL=/sign-up NEXT_PUBLIC_STREAM_API_KEY= STREAM_SECRET_KEY= NEXT_PUBLIC_BASE_URL=localhost:3000
-
Start the Development Server:
npm run dev
-
Access the Application: Open your browser and navigate to http://localhost:3000 to use FlashFlow.
We welcome contributions! Feel free to fork the repository and submit pull requests with improvements or bug fixes.
FlashFlow is licensed under the MIT License.