{"id":29322375,"url":"https://github.com/apolo-itnet/nest-buddy-client","last_synced_at":"2026-04-12T15:02:22.143Z","repository":{"id":301289982,"uuid":"1008761213","full_name":"apolo-itnet/Nest-Buddy-Client","owner":"apolo-itnet","description":" Roommate Finder is a full-stack web application that helps users find compatible roommates based on location, budget, and lifestyle preferences. It features authentication, post creation, liking to reveal contact info, and a responsive UI with modern animations.","archived":false,"fork":false,"pushed_at":"2025-06-26T04:37:58.000Z","size":0,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-26T05:28:57.237Z","etag":null,"topics":["expressjs","firebase-auth","mongodb","nodejs","react-router","reactjs","tailwindcss","vercel"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","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/apolo-itnet.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}},"created_at":"2025-06-26T04:05:28.000Z","updated_at":"2025-06-26T04:38:01.000Z","dependencies_parsed_at":"2025-06-26T05:39:03.295Z","dependency_job_id":null,"html_url":"https://github.com/apolo-itnet/Nest-Buddy-Client","commit_stats":null,"previous_names":["apolo-itnet/nest-buddy-client"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/apolo-itnet/Nest-Buddy-Client","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apolo-itnet%2FNest-Buddy-Client","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apolo-itnet%2FNest-Buddy-Client/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apolo-itnet%2FNest-Buddy-Client/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apolo-itnet%2FNest-Buddy-Client/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/apolo-itnet","download_url":"https://codeload.github.com/apolo-itnet/Nest-Buddy-Client/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apolo-itnet%2FNest-Buddy-Client/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264089692,"owners_count":23555793,"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":["expressjs","firebase-auth","mongodb","nodejs","react-router","reactjs","tailwindcss","vercel"],"created_at":"2025-07-07T14:11:24.249Z","updated_at":"2026-04-12T15:02:22.033Z","avatar_url":"https://github.com/apolo-itnet.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🏠 Roommate Finder\n\nA modern full-stack platform to help individuals find compatible roommates based on location, budget, lifestyle preferences, and interests.\n\n---\n\n## 🌐 Live Links\n\n🔗 **Live Website**: https://roommate-finder-8c107.web.app  \u003cbr\u003e\n🔗 **Client GitHub**: https://github.com/apolo-itnet/Nest-Buddy-Client.git \u003cbr\u003e\n🔗 **Server GitHub**: https://github.com/apolo-itnet/Nest-Buddy-Server\n\n---\n\n## 🧪 How to Run Locally\n\n\u003e Make sure you have **Node.js**, **MongoDB**, and **npm** installed.\n\n### 1. Clone \u0026 Run the Client\n\n```bash\ngit clone https://github.com/your-username/roommate-finder-client.git\ncd roommate-finder-client\nnpm install\nnpm run dev\n```\n\n\n### 2. Clone \u0026 Run the Server\n\n\n```bash\ngit clone https://github.com/your-username/roommate-finder-server.git\ncd roommate-finder-server\nnpm install\nnpm start\n```\n\n### 3. Setup .env Files\nSet environment variables in both client and server based on the examples below:\n\n**1. Client .env**\n```\nVITE_API_URL=http://localhost:5000\nVITE_FIREBASE_API_KEY=your_firebase_api_key\nVITE_FIREBASE_AUTH_DOMAIN=your_project.firebaseapp.com\nVITE_FIREBASE_PROJECT_ID=your_project_id\nVITE_FIREBASE_APP_ID=your_app_id\n```\n**2. Server .env**\n```\nPORT=5000\nMONGODB_URI=mongodb+srv://\u003cuser\u003e:\u003cpassword\u003e@cluster.mongodb.net/roommateDB\nJWT_SECRET=your_secret_key\n```\n\n--- \n### ✨ Key Features\n- 🔐 \u003cb\u003eUser Authentication\u003c/b\u003e : Email/password \u0026 Google login using Firebase Auth.\n- 📝 \u003cb\u003eAdd/Edit/Delete Posts \u003c/b\u003e: Authenticated users can manage their own roommate listings.\n- 📄 \u003cb\u003e Browse Listings\u003c/b\u003e: See all active roommate requests in a searchable, filterable table.\n- ❤️ \u003cb\u003e Like \u0026 Reveal\u003c/b\u003e: Like posts to reveal the contact info (disabled for own posts).\n- 🌙 \u003cb\u003e Theme Toggle\u003c/b\u003e: Smooth switch between light \u0026 dark themes.\n- 🎨 \u003cb\u003e Modern UI\u003c/b\u003e: TailwindCSS + DaisyUI powered responsive UI for all devices.\n- 🔒 \u003cb\u003e Protected Routes\u003c/b\u003e: Only logged-in users can access certain pages.\n- 🔥 \u003cb\u003e Real-time Feedback\u003c/b\u003e: Success and error messages via Toast \u0026 SweetAlert.\n- 💬 \u003cb\u003e Lottie \u0026 Typewriter Effects\u003c/b\u003e: For a more engaging UI.\n- 🧭 \u003cb\u003e 404 \u0026 Loader States\u003c/b\u003e: Custom not-found and loading pages for better UX.\n\n---\n### 📦 Installed Packages\n\u003ch4\u003eClient: \u003c/h4\u003e  \n\u003cli\u003e react\u003c/li\u003e\n\u003cli\u003ereact-router-dom \u003c/li\u003e\n\u003cli\u003efirebase \u003c/li\u003e\n\u003cli\u003e axios\u003c/li\u003e\n\u003cli\u003etailwindcss, daisyui, aos, swiper \u003c/li\u003e\n\u003cli\u003ereact-toastify, react-icons, sweetalert2 \u003c/li\u003e\n\u003cli\u003elottie-react, typewriter-effect \u003c/li\u003e\n\n\u003ch4\u003eServer: \u003c/h4\u003e  \n\u003cli\u003e express\u003c/li\u003e\n\u003cli\u003ecors \u003c/li\u003e\n\u003cli\u003edotenv \u003c/li\u003e\n\u003cli\u003emongoose \u003c/li\u003e\n\u003cli\u003e jsonwebtoken\u003c/li\u003e\n\u003cli\u003e cookie-parser\u003c/li\u003e\n\n---\n### 🔐 Environment Variables\n**\u003ch4\u003eClient:\u003c/h4\u003e**\n\n```\nVITE_FIREBASE_API_KEY=your-key\nVITE_FIREBASE_AUTH_DOMAIN=your-domain\n```\n**\u003ch4\u003eServer:\u003c/h4\u003e**\n\n```\nDB_USER=yourMongoUser\nDB_PASS=yourMongoPass\n```\n---\n### 🚀 Notable Routes\n| Route                 | Description                          | Protected |\n| --------------------- | ------------------------------------ | --------- |\n| `/`                   | Home Page with hero slider           | ❌         |\n| `/login`, `/register` | Auth pages                           | ❌         |\n| `/add-roommate`       | Add new listing                      | ✅         |\n| `/my-listings`        | View \u0026 manage own listings           | ✅         |\n| `/details/:id`        | Roommate post detail view            | ✅         |\n| `/like/:id`           | Like functionality with reveal logic | ✅         |\n\n---\n### ✏️ CRUD Features\n**✅ Create** : Add a new roommate post. \u003cbr\u003e\n**✅ Read** : View all public posts \u0026 individual details. \u003cbr\u003e\n**✅ Update** : Edit own posts only. \u003cbr\u003e\n**✅ Delete** : Delete your own roommate listing. \u003cbr\u003e\n\n---\n### 📝 Extra Notes\n- Users **cannot like** their own posts. \u003cbr\u003e\n- **Contact numbers reveal** only after liking a post. \u003cbr\u003e\n- Proper routing ensures **no page refresh issues.** \u003cbr\u003e\n- **Password validations** include uppercase, symbol, and length checks. \u003cbr\u003e\n\n---\n### 💡 Inspiration\nThis project was inspired by real-world roommate-finding struggles. \u003cbr\u003e \nThe goal was to create a clean, secure, and efficient platform that helps people quickly connect with compatible roommates.\n\n---\n### 📬 Submission\nThis project is submitted as part of Assignment-10 of the MERN Stack Developer Course.\n\n---\n### 👨‍💻 Developer Info\n**Apolo Barua Apurbo**   \u003cbr\u003e \n💼 MERN Stack Web Developer  \u003cbr\u003e \n📧 **Email**: apolo.itnet@gmail.com.com  \u003cbr\u003e \n📍 **Location**: Bangladesh  \u003cbr\u003e \n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapolo-itnet%2Fnest-buddy-client","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fapolo-itnet%2Fnest-buddy-client","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapolo-itnet%2Fnest-buddy-client/lists"}