{"id":20408173,"url":"https://github.com/mahmud0808/nexutalk","last_synced_at":"2026-04-07T20:31:21.438Z","repository":{"id":251624030,"uuid":"835900014","full_name":"Mahmud0808/NexuTalk","owner":"Mahmud0808","description":"Realtime chatting platform built with Next.js 14, React, Tailwind CSS, Prisma, MongoDB, NextAuth and Pusher.","archived":false,"fork":false,"pushed_at":"2026-03-21T13:50:38.000Z","size":1260,"stargazers_count":1,"open_issues_count":1,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-03-22T04:16:14.295Z","etag":null,"topics":["mongodb","next-auth","nextjs14","prisma","pusher","react","shadcn-ui","tailwind-css","zod-validation"],"latest_commit_sha":null,"homepage":"https://nexutalk.vercel.app","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Mahmud0808.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-07-30T18:43:28.000Z","updated_at":"2026-03-21T13:50:35.000Z","dependencies_parsed_at":"2024-08-10T20:39:24.606Z","dependency_job_id":"13c9d297-35bd-415e-ac96-9b081ae4f20f","html_url":"https://github.com/Mahmud0808/NexuTalk","commit_stats":null,"previous_names":["mahmud0808/nexutalk"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Mahmud0808/NexuTalk","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mahmud0808%2FNexuTalk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mahmud0808%2FNexuTalk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mahmud0808%2FNexuTalk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mahmud0808%2FNexuTalk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Mahmud0808","download_url":"https://codeload.github.com/Mahmud0808/NexuTalk/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mahmud0808%2FNexuTalk/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31528265,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-07T16:28:08.000Z","status":"ssl_error","status_checked_at":"2026-04-07T16:28:06.951Z","response_time":105,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["mongodb","next-auth","nextjs14","prisma","pusher","react","shadcn-ui","tailwind-css","zod-validation"],"created_at":"2024-11-15T05:28:56.001Z","updated_at":"2026-04-07T20:31:21.412Z","avatar_url":"https://github.com/Mahmud0808.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n  \u003cbr /\u003e\n    \u003cimg src=\"https://i.postimg.cc/syJzzwf1/NexuTalk.png\" alt=\"Project Banner\"\u003e\n  \u003cbr /\u003e\n  \u003cbr /\u003e\n\n  \u003cdiv\u003e\n    \u003cimg src=\"https://img.shields.io/badge/-Next_JS-black?style=for-the-badge\u0026logoColor=white\u0026logo=nextdotjs\u0026color=393D72\" alt=\"nextdotjs\" /\u003e\n    \u003cimg src=\"https://img.shields.io/badge/-MongoDB-black?style=for-the-badge\u0026logoColor=white\u0026logo=mongodb\u0026color=1FAD58\" alt=\"mongodb\" /\u003e\n    \u003cimg src=\"https://img.shields.io/badge/-Tailwind_CSS-black?style=for-the-badge\u0026logoColor=white\u0026logo=tailwindcss\u0026color=3FBFF8\" alt=\"tailwindcss\" /\u003e\n    \u003cimg src=\"https://img.shields.io/badge/-Shadcn_UI-black?style=for-the-badge\u0026logoColor=white\u0026logo=shadcnui\u0026color=1f223b\" alt=\"shadcnui\" /\u003e\n    \u003cimg src=\"https://img.shields.io/badge/-Zod-black?style=for-the-badge\u0026logoColor=white\u0026logo=zod\u0026color=4053BA\" alt=\"zod\" /\u003e\n    \u003cimg src=\"https://img.shields.io/badge/-Typescript-black?style=for-the-badge\u0026logoColor=white\u0026logo=typescript\u0026color=387CC8\" alt=\"typescript\" /\u003e\n    \u003cimg src=\"https://img.shields.io/badge/-Prisma-black?style=for-the-badge\u0026logoColor=white\u0026logo=prisma\u0026color=0A3C54\" alt=\"prisma\" /\u003e\n    \u003cimg src=\"https://img.shields.io/badge/-Pusher-black?style=for-the-badge\u0026logoColor=white\u0026logo=pusher\u0026color=361A59\" alt=\"pusher\" /\u003e\n  \u003c/div\u003e\n\n  \u003ch2 align=\"center\"\u003eNexuTalk\u003c/h2\u003e\n\n  \u003cdiv align=\"center\"\u003e\n     \u003cb\u003eNexuTalk\u003c/b\u003e is a real-time chatting platform built with cutting-edge technologies, offering seamless communication with a modern UI. It supports features such as group conversations, single conversations, online status, responsive design for various devices, image sharing, and dark/light mode.\n  \u003c/div\u003e\n  \u003cbr /\u003e\n  \u003ca href=\"https://nexutalk.vercel.app/\"\u003e\u003cstrong\u003e➥ Visit NexuTalk App\u003c/strong\u003e\u003c/a\u003e\n\u003c/div\u003e\n\n## ✨ Features\n\n- **Real-time Messaging:** Instant messaging with real-time updates.\n\n- **Group Conversations:** Create and manage group chats.\n\n- **Single Conversations:** One-on-one messaging.\n\n- **Online Status:** See who's online.\n\n- **Responsive Design:** Optimized for mobile, tablet, and desktop views.\n\n- **Image Sharing:** Share images within conversations.\n\n- **Dark/Light Mode:** Switch between dark and light themes.\n\n- and many more, including code architecture and reusability.\n\n## ⚙️ Tech Stack\n\n- **Frontend:** Next.js 14, React, Tailwind CSS, Shadcn\n\n- **Backend:** Next.js, Prisma, MongoDB, Pusher\n\n- **Authentication:** NextAuth\n\n- **Validation:** Zod\n\n- **Image Upload:** Cloudinary\n\n## 🚀 Quick Start\n\nFollow these steps to set up the project locally on your machine.\n\n### Prerequisites\n\nMake sure you have the following installed on your machine:\n\n- [Git](https://git-scm.com/)\n- [Node.js](https://nodejs.org/en)\n- [npm](https://www.npmjs.com/) (Node Package Manager)\n\n### Cloning the Repository\n\n```bash\ngit clone https://github.com/Mahmud0808/NexuTalk.git\ncd NexuTalk\n```\n\n### Installation\n\nInstall the project dependencies using npm:\n\n```bash\nnpm install\n```\n\n### Set Up Environment Variables\n\nCreate a new file named `.env` in the root of your project and add the following content:\n\n```env\nDATABASE_URL=\nGOOGLE_CLIENT_ID=\nGOOGLE_CLIENT_SECRET=\nGITHUB_ID=\nGITHUB_SECRET=\nNEXTAUTH_URL=\"http://localhost:3000/\"\nNEXTAUTH_SECRET=\nNEXTAUTH_JWT_SECRET=\nNEXT_PUBLIC_CLOUDINARY_CLOUD_NAME=\nPUSHER_APP_ID=\nNEXT_PUBLIC_PUSHER_APP_KEY=\nPUSHER_SECRET=\nNEXT_PUBLIC_PUSHER_CLUSTER=\n```\n\nReplace the placeholder values with your actual credentials. You can obtain these credentials by signing up for the corresponding websites on [MongoDB](https://www.mongodb.com/), [Google Cloud Console](https://console.cloud.google.com/), [GitHub](https://github.com/), [Cloudinary](https://cloudinary.com/), and [Pusher](https://pusher.com/).\n\n#### Google Cloud Console secrets:\n\n- Go to Google Cloud Console \u003e Create new project \u003e Select the project \u003e Search for APIs \u0026 Services \u003e OAuth consent screen \u003e Make sure to select External User Type \u003e Continue, add app domain, authorized domain and developer contact information.\n\n- Then go to Credentials \u003e Create Credentials \u003e OAuth client ID:\n\n  - Application type: Web application\n\n  - Add your site home page URL without any forward slash `/` at the end in Authorized JavaScript origins field, skip this if you are not deploying your site and using it in localhost. e.g: `https://nexutalk.vercel.app`\n\n  - Add your site URL in this format `{site_url}/api/auth/callback/google`. e.g: `http://localhost:3000/api/auth/callback/google`\n\n#### GitHub secrets:\n\n- Go to GitHub \u003e Settings \u003e Developer settings \u003e OAuth Apps \u003e New OAuth App:\n\n  - Add your site URL in Homepage URL and Authorized callback URL fields.\n\n#### Cloudinary secrets:\n\n- Go to Cloudinary \u003e Settings \u003e Upload \u003e Add upload preset:\n\n  - Signing Mode: Unsigned\n\n  - Copy the name and use it in environment variables.\n\n#### Pusher secrets:\n\n- Go to Pusher \u003e Channels:\n\n  - Front end: React\n \n  - Back end: Node.js\n\n  - Get the environment variables from App Keys page.\n\n### Setting up Database\n\nRun the following commands in terminal:\n\n```bash\nnpx prisma db push\nnpx prisma generate\n```\n\n### Running the Project\n\n```bash\nnpm run dev\n```\n\nOpen [http://localhost:3000](http://localhost:3000) in your browser to view the project.\n\n## 🤝 Contributing\n\nContributions are welcome! Here's how you can contribute:\n\n- Fork the repository.\n- Create your feature branch (`git checkout -b feature/AmazingFeature`).\n- Commit your changes (`git commit -m 'Add some AmazingFeature'`).\n- Push to the branch (`git push origin feature/AmazingFeature`).\n- Open a pull request.\n\n## 📬 Contact\n\nWanna reach out to me? DM me at 👇\n\nEmail: mahmudul15-13791@diu.edu.bd\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmahmud0808%2Fnexutalk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmahmud0808%2Fnexutalk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmahmud0808%2Fnexutalk/lists"}