{"id":29190770,"url":"https://github.com/mostakim69/hobbyhub","last_synced_at":"2026-05-28T00:33:24.676Z","repository":{"id":301500010,"uuid":"1008799610","full_name":"Mostakim69/HobbyHub","owner":"Mostakim69","description":"HobbyHub is a platform where people can discover and join local hobby-based groups (e.g., book clubs, hiking crews, painting circles) or create their own. It encourages social engagement through shared interests, helping people build communities around their passions..","archived":false,"fork":false,"pushed_at":"2025-06-27T06:31:40.000Z","size":236,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-27T07:37:49.271Z","etag":null,"topics":["daisyui","firebas","firebase-auth","html5","javascript","mongodb","react","react-icons","react-router","swalalert2","tailwindcss","vercel"],"latest_commit_sha":null,"homepage":"https://happy-family-4d585.web.app/","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/Mostakim69.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-26T05:45:21.000Z","updated_at":"2025-06-27T06:31:44.000Z","dependencies_parsed_at":"2025-06-27T07:48:01.733Z","dependency_job_id":null,"html_url":"https://github.com/Mostakim69/HobbyHub","commit_stats":null,"previous_names":["mostakim69/hobbyhub"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Mostakim69/HobbyHub","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mostakim69%2FHobbyHub","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mostakim69%2FHobbyHub/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mostakim69%2FHobbyHub/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mostakim69%2FHobbyHub/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Mostakim69","download_url":"https://codeload.github.com/Mostakim69/HobbyHub/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mostakim69%2FHobbyHub/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263052430,"owners_count":23406106,"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":["daisyui","firebas","firebase-auth","html5","javascript","mongodb","react","react-icons","react-router","swalalert2","tailwindcss","vercel"],"created_at":"2025-07-02T00:11:12.447Z","updated_at":"2026-04-13T06:03:29.964Z","avatar_url":"https://github.com/Mostakim69.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🍽️ HobbyHub  Web App\n\nWelcome to **HobbyHub**,HobbyHub is a community-driven web platform that allows users to create, join, and manage local hobby-based groups. Whether you're into painting, gaming, hiking, or coding, HobbyHub helps you connect with like-minded individuals in your area.\n---\n\n## 📌 Project Overview\n\n| Detail                 | Information                                                                        |\n| ---------------------- | ---------------------------------------------------------------------------------- |\n| **GitHub Client site** | [HobbyHub-client](https://github.com/Mostakim69/HobbyHub)         |\n| **Live Site client**   | [HobbyHub-firebase](https://happy-family-4d585.web.app/)                              |\n| **GitHub server site** | [HobbyHub-server](https://github.com/Mostakim69/HobbyHub-server)         |\n| **Portfolio GitHub**   | [Md Mostakim Hosen-portfolio](https://github.com/Mostakim69/My-Portfolio-Website)         |\n| **Portfolio Live**     | [Firebase-live](https://my-portfolio-website-9ba5f.web.app/)                         |\n| **Created On**         | 20 May 2025, 10:32 AM GMT+6                                                        |\n| **Location**           | Mohanpur, Rajshahi, Bangladesh                                              |\n\n## 🌐 Live Site\n\n[🔗 Deployed App](#) _(https://happy-family-4d585.web.app/)_\n\n---\n\n## 📁 Project Structure\n\nHere's a high-level overview of the project's file structure:\n\n```\n.\n├── public/               # Static assets (favicon, CNAME, vite.svg)\n├── dist/                 # Production build\n├── src/                  # Main application source code\n│   ├── animation/        # Lottie files and animation components\n│   ├── assets/           # Images, logos, and JSON\n│   ├── components/       # Reusable UI components (Header, Banner, Footer)\n│   ├── hooks/            # Custom React hooks\n│   ├── Layout/           # Route layouts\n│   ├── modules/          # Domain-based modules\n│   │   ├── auth/         # Authentication\n│   │   ├── blogs/        # Blog system\n│   │\n│   ├── pages/            # Page components\n│   ├── provider/         # Context Providers (Auth)\n│   ├── Routes/           # Routing logic\n│   ├── index.css         # Tailwind styles\n│   ├── App.jsx           # Main App component\n│   └── main.jsx          # App bootstrap\n├── README.md             # You're here\n├── vite.config.js        # Vite configuration\n├── eslint.config.js      # Linting rules\n└── package.json          # Project metadata\n```\n\n---\n\n## 🧭 Routing Structure (with Layouts)\n\n### 🔐 Auth Layout\n\n- `/login` → `Login.jsx`\n- `/register` → `Register.jsx`\n- `/forgot-password` → `ForgotPassword.jsx`\n\n### 🏠 Main Layout (Landing Pages)\n\n- `/` → `Home.jsx`\n- `/about` → `About.jsx`\n- `/contact` → `Contact.jsx`\n- `/faq` → `Faq.jsx`\n- `/privacy-policy` → `PrivacyPolicy.jsx`\n- `/terms-and-conditions` → `TermsCondintion.jsx`\n\n\n### 📚 Blog Feature (via `BlogsLayout.jsx`)\n\n- `/blogs` → `Blogs.jsx`\n- `/blogs/:id` → `BlogDetails.jsx`\n- `/create-blog` → `CreateBlog.jsx`\n\n\n### 👤 Profile\n\n- `/my-profile` → `MyProfile.jsx`\n- `/update-profile` → `UpdateProfile.jsx`\n\n---\n\n## 🔑 Features\n\n### ✅ Authentication\n\n- Firebase Auth integration\n- Login, Register, Forgot Password\n- Auth-protected routes\n\n\n### 📝 Blog System\n\n- View all blogs\n- Blog details with comments, read time, tags\n- Create and share new blogs\n\n\n---\n\n## 🛠️ Tech Stack\n\n- **Frontend**: React.js, Tailwind CSS\n- **Routing**: React Router\u0026#x20;\n- **Forms**: React Hook Form, React Day Picker\n- **State Management**: React Context API (AuthProvider)\n- **Animations**: Lottie\n- **Toast Notifications**: React Hot Toast\n- **Deployment**: GitHub Pages / Vercel / Netlify (configure as needed)\n- **Build Tool**: Vite\n\n---\n\n## 📦 Installation\n\n```bash\nbun install  # or npm install\nbun run dev  # or npm run dev\n```\n\n---\n\n## 📌 TODOs\n\n- ***\n\n## 👏 Credits\n\n- Design inspired by classic cooking \u0026 recipe books\n- Icons via Lucide and Heroicons\n- Lottie animations from LottieFiles\n\n---\n\n## 📄 License\n\nThis project is licensed under the MIT License.\n\n---\n\nMade with ❤️ for food enthusiasts and aspiring chefs.\n\n\u003e \"Food is symbolic of love when words are inadequate.\" — Alan D. Wolfelt\n\n----- preivous version ------\n---\n\n---\n\n## 🚀 Features\n\n### 🔐 Authentication \u0026 Security\n\n- **Email/Password Login**: Secure user authentication via Firebase.\n- **Google Sign-In**: Quick access using Google accounts.\n- **Protected Routes**: Restricts access to sensitive pages like profile and recipe details.\n- **Password Reset**: Users can reset passwords through email verification.\n\n\n### 👤 User Profile\n\n- **Profile Page**: View and edit user information, including display name and photo.\n- **Update Profile**: Modify personal details securely.\n\n### 📄 Additional Pages\n\n- **About**: Learn more about FlavorBook.\n- **Contact**: Get in touch with the team.\n- **FAQ**: Frequently Asked Questions.\n- **Privacy Policy**: Understand how user data is handled.\n- **Terms \u0026 Conditions**: Legal information regarding the use of FlavorBook.\n\n### 🎨 UI/UX Enhancements\n\n- **Responsive Design**: Optimized for various devices.\n- **Tailwind CSS \u0026 DaisyUI**: Utilized for styling and component design.\n- **Lottie Animations**: Engaging animations for better user experience.\n- **Swiper**: Interactive sliders for showcasing content.\n\n---\n\n\n## \u003cimg src=\"https://media.giphy.com/media/VgCDAzcKvsR6OM0uWg/giphy.gif\" width=\"50\"\u003e A Little More About Me...  \n\nHello i'm Md Mostakim Hosen.\n\u003cp\u003eI'm a passionate Frontend Developer with a strong focus on creating clean, responsive, and user-friendly web interfaces. I enjoy building modern web applications using technologies like HTML, CSS, JavaScript, React.js, and Tailwind CSS. I believe in writing readable code, maintaining UI consistency, and ensuring a smooth user experience across all devices. I'm always eager to learn new tools and improve my skills to deliver better results.\n\n\u003c/p\u003e\n\n```javascript\nconst mostakim = {\n  pronouns: \"he\" | \"him\",\n  code: [Javascript, Typescript, HTML, CSS, Python, Java],\n  tools: [React, Node, Storybook, Styled-Components],\n  architecture: [\"microservices\", \"event-driven\", \"design system pattern\"],\n  techCommunities: {\n                        coorganizer: \"AfroPython\",\n                        speaker: \"Latinity\",\n                        mentor: \"EducaTRANSforma\"\n                      },\n challenge: \"I am doing the #100DaysOfCode challenge focused on react and typescript\"\n}\n```\n\n\n\u003cimg src=\"https://i.postimg.cc/bvR5Q4QY/Whats-App-Image-2025-06-26-at-8-36-49-PM.jpg\" alt=\"Banner\"  width=\"100%\" height=\"auto\" /\u003e\n\n## 🌐 Socials:\n [![email](https://img.shields.io/badge/Email-D14836?logo=gmail\u0026logoColor=white)](mailto:mdmostakimhosen35@gmail.com) \n[![Facebook](https://img.shields.io/badge/Facebook-%231877F2.svg?logo=Facebook\u0026logoColor=white)](https://facebook.com/MostakimHosennnn)\n[![Discord](https://img.shields.io/badge/Discord-%237289DA.svg?logo=discord\u0026logoColor=white)](https://discord.gg/mostakim520807) [![Instagram](https://img.shields.io/badge/Instagram-%23E4405F.svg?logo=Instagram\u0026logoColor=white)](https://instagram.com/posterboy3369) [![LinkedIn](https://img.shields.io/badge/LinkedIn-%230077B5.svg?logo=linkedin\u0026logoColor=white)](https://linkedin.com/in/test) [![Pinterest](https://img.shields.io/badge/Pinterest-%23E60023.svg?logo=Pinterest\u0026logoColor=white)](https://pinterest.com/mdmostakimhosen35) [![TikTok](https://img.shields.io/badge/TikTok-%23000000.svg?logo=TikTok\u0026logoColor=white)](https://tiktok.com/@posterboy369) [![X](https://img.shields.io/badge/X-black.svg?logo=X\u0026logoColor=white)](https://x.com/test) [![YouTube](https://img.shields.io/badge/YouTube-%23FF0000.svg?logo=YouTube\u0026logoColor=white)](https://youtube.com/@PosterBoy3369) \n\n# 💻 Tech Stack:\n ![HTML5](https://img.shields.io/badge/html5-%23E34F26.svg?style=for-the-badge\u0026logo=html5\u0026logoColor=white)\n![DaisyUI](https://img.shields.io/badge/daisyui-5A0EF8?style=for-the-badge\u0026logo=daisyui\u0026logoColor=white)\n![TailwindCSS](https://img.shields.io/badge/tailwindcss-%2338B2AC.svg?style=for-the-badge\u0026logo=tailwind-css\u0026logoColor=white)\n![JavaScript](https://img.shields.io/badge/javascript-%23323330.svg?style=for-the-badge\u0026logo=javascript\u0026logoColor=%23F7DF1E)\n![MongoDB](https://img.shields.io/badge/MongoDB-%234ea94b.svg?style=for-the-badge\u0026logo=mongodb\u0026logoColor=white)\n![React](https://img.shields.io/badge/react-%2320232a.svg?style=for-the-badge\u0026logo=react\u0026logoColor=%2361DAFB)\n![C#](https://img.shields.io/badge/c%23-%23239120.svg?style=for-the-badge\u0026logo=csharp\u0026logoColor=white)\n ![Java](https://img.shields.io/badge/java-%23ED8B00.svg?style=for-the-badge\u0026logo=openjdk\u0026logoColor=white)  ![Python](https://img.shields.io/badge/python-3670A0?style=for-the-badge\u0026logo=python\u0026logoColor=ffdd54) ![PHP](https://img.shields.io/badge/php-%23777BB4.svg?style=for-the-badge\u0026logo=php\u0026logoColor=white) ![Firebase](https://img.shields.io/badge/firebase-%23039BE5.svg?style=for-the-badge\u0026logo=firebase) ![Netlify](https://img.shields.io/badge/netlify-%23000000.svg?style=for-the-badge\u0026logo=netlify\u0026logoColor=#00C7B7) ![Vercel](https://img.shields.io/badge/vercel-%23000000.svg?style=for-the-badge\u0026logo=vercel\u0026logoColor=white)  ![Express.js](https://img.shields.io/badge/express.js-%23404d59.svg?style=for-the-badge\u0026logo=express\u0026logoColor=%2361DAFB) ![JWT](https://img.shields.io/badge/JWT-black?style=for-the-badge\u0026logo=JSON%20web%20tokens) ![NPM](https://img.shields.io/badge/NPM-%23CB3837.svg?style=for-the-badge\u0026logo=npm\u0026logoColor=white) ![NodeJS](https://img.shields.io/badge/node.js-6DA55F?style=for-the-badge\u0026logo=node.js\u0026logoColor=white) ![Nodemon](https://img.shields.io/badge/NODEMON-%23323330.svg?style=for-the-badge\u0026logo=nodemon\u0026logoColor=%BBDEAD)  ![React Query](https://img.shields.io/badge/-React%20Query-FF4154?style=for-the-badge\u0026logo=react%20query\u0026logoColor=white) ![React Router](https://img.shields.io/badge/React_Router-CA4245?style=for-the-badge\u0026logo=react-router\u0026logoColor=white) ![React Native](https://img.shields.io/badge/react_native-%2320232a.svg?style=for-the-badge\u0026logo=react\u0026logoColor=%2361DAFB) ![React Hook Form](https://img.shields.io/badge/React%20Hook%20Form-%23EC5990.svg?style=for-the-badge\u0026logo=reacthookform\u0026logoColor=white) ![Vite](https://img.shields.io/badge/vite-%23646CFF.svg?style=for-the-badge\u0026logo=vite\u0026logoColor=white) ![Firebase](https://img.shields.io/badge/firebase-a08021?style=for-the-badge\u0026logo=firebase\u0026logoColor=ffcd34)  ![MySQL](https://img.shields.io/badge/mysql-4479A1.svg?style=for-the-badge\u0026logo=mysql\u0026logoColor=white) ![Adobe Photoshop](https://img.shields.io/badge/adobe%20photoshop-%2331A8FF.svg?style=for-the-badge\u0026logo=adobe%20photoshop\u0026logoColor=white) ![Canva](https://img.shields.io/badge/Canva-%2300C4CC.svg?style=for-the-badge\u0026logo=Canva\u0026logoColor=white) ![Figma](https://img.shields.io/badge/figma-%23F24E1E.svg?style=for-the-badge\u0026logo=figma\u0026logoColor=white)\n# 📊 GitHub Stats:\n![](https://github-readme-stats.vercel.app/api?username=Mostakim69\u0026theme=swift\u0026hide_border=true\u0026include_all_commits=true\u0026count_private=true)\u003cbr/\u003e\n![](https://nirzak-streak-stats.vercel.app/?user=Mostakim69\u0026theme=swift\u0026hide_border=true)\u003cbr/\u003e\n![](https://github-readme-stats.vercel.app/api/top-langs/?username=Mostakim69\u0026theme=swift\u0026hide_border=true\u0026include_all_commits=true\u0026count_private=true\u0026layout=compact)\n\n---\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmostakim69%2Fhobbyhub","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmostakim69%2Fhobbyhub","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmostakim69%2Fhobbyhub/lists"}