{"id":20066002,"url":"https://github.com/yeasir0032/discord-clone","last_synced_at":"2025-04-13T12:44:07.591Z","repository":{"id":204080787,"uuid":"711069447","full_name":"Yeasir0032/Discord-Clone","owner":"Yeasir0032","description":"A Discord clone built using Next.js, Tailwind CSS, and LiveKit, providing users with real-time text, voice, and video communication features.","archived":false,"fork":false,"pushed_at":"2024-08-19T22:27:38.000Z","size":244,"stargazers_count":50,"open_issues_count":26,"forks_count":55,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-04-08T12:51:57.570Z","etag":null,"topics":["discord","ghdesktop","gssoc24","livekit","nextjs","radix-ui","realtime","socket-io","supabase","tailwindcss","vscode"],"latest_commit_sha":null,"homepage":"https://discord-a.up.railway.app/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Yeasir0032.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"Contributing.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-10-28T05:54:18.000Z","updated_at":"2025-04-06T16:55:49.000Z","dependencies_parsed_at":null,"dependency_job_id":"250adc04-1f3a-4ce0-922b-8ed09777d561","html_url":"https://github.com/Yeasir0032/Discord-Clone","commit_stats":null,"previous_names":["yeasir0032/discord-clone"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Yeasir0032%2FDiscord-Clone","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Yeasir0032%2FDiscord-Clone/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Yeasir0032%2FDiscord-Clone/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Yeasir0032%2FDiscord-Clone/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Yeasir0032","download_url":"https://codeload.github.com/Yeasir0032/Discord-Clone/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248717240,"owners_count":21150387,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["discord","ghdesktop","gssoc24","livekit","nextjs","radix-ui","realtime","socket-io","supabase","tailwindcss","vscode"],"created_at":"2024-11-13T13:53:59.244Z","updated_at":"2025-04-13T12:44:07.564Z","avatar_url":"https://github.com/Yeasir0032.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align = \"center\"\u003e Discord Clone \u003c/h1\u003e\n\n\u003cdiv align=\"center\"\u003e\n\u003ci\u003e Welcome to the Discord Clone built with Next.js! This project aims to replicate the functionality and design of the popular communication platform Discord using the Next.js framework. \u003c/i\u003e\n\n\u003cbr\u003e\n\u003cbr\u003e\n\n![Demo photo](https://utfs.io/f/ff27ddb0-dadb-426a-b064-72d8dd3b85df-w4d8p.png)\n\n\u003c/div\u003e\n\n\u003ch2 align=\"center\"\u003e -\u003e Key Features \u003c- \u003c/h1\u003e\n\n- **Real-time Chatting:** Enjoy seamless real-time messaging with friends and communities. Send text messages instantly and engage in conversations effortlessly.\n- **Voice and Video Calls:** Connect with friends through high-quality voice and video calls. Experience crystal-clear audio and video communication, whether you're chatting one-on-one or in a group.\n- **Server and Channel Management:** Create and manage servers and channels to organize your communities and conversations efficiently. Customize permissions and roles to maintain control over your server environment.\n- **Direct messages**: Conversate with any members of the server directly. You can give a video call or an audio call directly.\n- **Rich Media Support:** Share images, videos, GIFs, and other media files within your conversations. Express yourself with a wide range of multimedia options.\n- **Emojis and Reactions:** Spruce up your conversations with emojis and reactions. React to messages to express your feelings or simply add some fun to the chat.\n\n\u003ch2 align=\"center\"\u003e 💻 Tech Stacks \u003c/h2\u003e\n\n**Frontend:**\n\n\u003cdiv align=\"center\"\u003e\n\n![Next JS](https://img.shields.io/badge/Next-black?style=for-the-badge\u0026logo=next.js\u0026logoColor=white)\n![React](https://img.shields.io/badge/react-%2320232a.svg?style=for-the-badge\u0026logo=react\u0026logoColor=%2361DAFB)\n![TailwindCSS](https://img.shields.io/badge/tailwindcss-%2338B2AC.svg?style=for-the-badge\u0026logo=tailwind-css\u0026logoColor=white) \n![ClerkJS](https://img.shields.io/badge/ClerkJS-438BF8?style=for-the-badge\u0026logo=clerk\u0026logoColor=white)\n![LiveKit](https://img.shields.io/badge/LiveKit-FF4088?style=for-the-badge\u0026logo=livekit\u0026logoColor=white)\n![UploadThing](https://img.shields.io/badge/UploadThing-0088FF?style=for-the-badge\u0026logo=uploadthing\u0026logoColor=white)\n![Emoji-mart](https://img.shields.io/badge/Emoji--mart-9B98FF?style=for-the-badge\u0026logo=npm\u0026logoColor=white)\n![Zustand](https://img.shields.io/badge/Zustand-FFB700?style=for-the-badge\u0026logo=npm\u0026logoColor=white)\n![Zod](https://img.shields.io/badge/Zod-9B32FF?style=for-the-badge\u0026logo=npm\u0026logoColor=white)\n![Radix UI](https://img.shields.io/badge/radix%20ui-161618.svg?style=for-the-badge\u0026logo=radix-ui\u0026logoColor=white)\n![Lucide react](https://img.shields.io/badge/Lucide%20react-00D1B2?style=for-the-badge\u0026logoColor=white)\n![Axios](https://img.shields.io/badge/Axios-0088FF?style=for-the-badge\u0026logo=axios\u0026logoColor=white)\n![React Query](https://img.shields.io/badge/-React%20Query-FF4154?style=for-the-badge\u0026logo=react%20query\u0026logoColor=white)\n![TypeScript](https://img.shields.io/badge/typescript-%23007ACC.svg?style=for-the-badge\u0026logo=typescript\u0026logoColor=white)\n\n\u003c/div\u003e\n\n**Backend :**\n\n\u003cdiv align=\"center\"\u003e\n\n![Node JS](https://img.shields.io/badge/Node.js-43853D?style=for-the-badge\u0026logo=node.js\u0026logoColor=white)\n![Socket.IO](https://img.shields.io/badge/Socket.IO-010101?style=for-the-badge\u0026logo=socket.io\u0026logoColor=white)\n![Supabase](https://img.shields.io/badge/Supabase-3954E1?style=for-the-badge\u0026logo=supabase\u0026logoColor=white)\n\n\u003c/div\u003e\n\n## Contribution\n\nWe welcome contributions from the community! Before contributing, please review our [Contribution Guidelines](./Contributing.md) to get started.\n\n## Local development\n\n### Fork the repo\n\n\u003eTo contribute to this Discord-Clone, you must first fork the [Discord-Clone](https://github.com/Yeasir0032/Discord-Clone) repo.\n\n### Clone the repo\n\n1. Clone your GitHub forked repo:\n\n   ```sh\n   git clone https://github.com/\u003cgithub_username\u003e/Discord-Clone\n   ```\n\n2. Go to the Discord-Clone directory:\n   ```sh\n   cd discord-clone\n   ```\n\n### Install dependencies\n\n1. Install the dependencies in the root of the repo:\n\n   ```sh\n   npm install # install dependencies\n   ```\n\n2. Copy the example `.env.local.example` to `.env.local`\n\n   ```sh\n   .env.local.example\n   ```\n\n### Setup Environment variables\n\n- Create a .env.local in your root directory\n- Visit [Supabase](https://supabase.com/dashboard/) website to create a project, then get its base URL and base anon key.\n- Visit [UploadThing](https://uploadthing.com/dashboard) website to create a new app and get its app ID and secret key.\n- Visit [ClerkJS](https://clerk.com/docs/references/javascript/overview) website to create a new app and get its public key and secret key.\n- Visit [LiveKit](https://livekit.io/) website to create a new app and get its public key, URL, and secret key.\n- Paste the credentials in the respective positions.\n- Keep the rest as it is.\n\n### Testing\n\nTo start a development server\n\n```sh\nnpm run dev # start all the applications\n```\n\n\u003eVisit [http://localhost:3000/](http://localhost:3000/)\n\n### Deployment\n\n\u003eFor deployment use services like **Railway** , **Digital Ocean**, **AWS**, **Google Cloud**, **Azure**, etc.\n\n## Documentation\n\n### App Routes\n\n- **auth** -\u003e For authentication using ClerkJs.\n- **invite** -\u003e For inviting to existing servers.\n- **main** -\u003e contains routes for server, channel, and conversations pages.\n  - **/servers/serverId** -\u003e server route\n    - **/channels/channelId** -\u003e channel specific route\n  - **/conversations/memberId** -\u003e member of server private conversation.\n- **setup** -\u003e To create an initial server create a modal.\n- **api** -\u003e For api handling\n\n\u003cdiv\u003e\n \n\u003ch2 align = \"center\"\u003eOur Contributors ❤️\u003c/h2\u003e\n\u003cdiv align = \"center\"\u003e\n \u003ch3\u003eThank you for contributing to our repository.😃\u003c/h3\u003e\n   \n![Contributors](https://contributors-img.web.app/image?repo=Yeasir0032/Discord-Clone)\n\n### Show some ❤️ by starring this awesome repository!\n\n\u003c/div\u003e\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyeasir0032%2Fdiscord-clone","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyeasir0032%2Fdiscord-clone","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyeasir0032%2Fdiscord-clone/lists"}