Giter VIP home page Giter VIP logo

discord-clone's Introduction

Discord Clone

This project is a full-stack clone of Discord, built using Next.js, Clerk for authentication, and the Stream SDK for real-time messaging and video/audio calls. It replicates the core features of Discord including voice and text channel creation, personalized server creation, flawless authentication with a single click, and the ability to join video and audio calls.

Features

  • Voice and Text Channels Creation: Create and manage multiple voice and text channels within your servers.
  • Personalized Server Creation: Create your own servers to manage your communities.
  • Flawless Authentication: Secure, single-click authentication using Clerk.
  • Join Video and Audio Calls: Seamless integration for video and audio calls.

Tech Stack

  • Next.js: A React framework for building server-side rendered applications.
  • Clerk: Authentication service to provide secure and easy-to-implement authentication.
  • Stream SDK: For real-time messaging, video, and audio call functionalities.

Getting Started

Follow these steps to get the project up and running on your local machine.

Prerequisites

  • Node.js (v12 or higher)
  • npm or yarn
  • Docker

Installation

Local Setup

  1. Clone the repository:

    git clone https://github.com/Pratik-050/discord-clone.git
    cd discord-clone
  2. Install dependencies:

    npm install
    # or
    yarn install
  3. Set up environment variables:

    Create a .env.local file in the root directory and refer the .env.example for the variable names.

  4. Run the development server:

    npm run dev
    # or
    yarn dev

    Open http://localhost:3000 to view the application in the browser.

Docker Setup

  1. Clone the repository:

    git clone https://github.com/Pratik-050/discord-clone.git
    cd discord-clone
  2. Set up environment variables:

    Create a .env.local file in the root directory and refer the .env.example for the variable names.

  3. Build the Docker image:

    docker build -t discord-clone .
  4. Run the Docker container:

    docker run -p 3000:3000 --env-file .env.local discord-clone

    Open http://localhost:3000 to view the application in the browser.

Usage

Authentication

This project uses Clerk for authentication. Upon visiting the application, users can sign up or log in with a single click. Clerk handles all authentication flows, including social logins and password management.

Server and Channel Management

Users can create their own servers and manage multiple voice and text channels within those servers. Each server is isolated, providing a personalized space for different communities.

Real-Time Messaging and Calls

The Stream SDK powers the real-time messaging, video, and audio call features. Users can join voice and video channels within their servers, enabling seamless communication.

Acknowledgements

discord-clone's People

Contributors

pratik-050 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.