{"id":29190777,"url":"https://github.com/meshal10613/hobby-hatch-s","last_synced_at":"2026-04-18T07:32:03.896Z","repository":{"id":301885524,"uuid":"1010575840","full_name":"meshal10613/hobby-hatch-s","owner":"meshal10613","description":"The back-end of HobbyHatch is build with express js and using MongoDB as database","archived":false,"fork":false,"pushed_at":"2025-06-29T11:22:23.000Z","size":16,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-29T12:28:39.473Z","etag":null,"topics":["dot-env","express-js","mongo","vercel-deployment"],"latest_commit_sha":null,"homepage":"https://assignment-10-server-xi-fawn.vercel.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/meshal10613.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-29T11:19:47.000Z","updated_at":"2025-06-29T11:22:26.000Z","dependencies_parsed_at":"2025-06-29T12:29:27.667Z","dependency_job_id":"9d59b740-da66-4f14-ba87-d1d05b51cd84","html_url":"https://github.com/meshal10613/hobby-hatch-s","commit_stats":null,"previous_names":["meshal10613/hobby-hatch-s"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/meshal10613/hobby-hatch-s","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meshal10613%2Fhobby-hatch-s","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meshal10613%2Fhobby-hatch-s/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meshal10613%2Fhobby-hatch-s/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meshal10613%2Fhobby-hatch-s/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/meshal10613","download_url":"https://codeload.github.com/meshal10613/hobby-hatch-s/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meshal10613%2Fhobby-hatch-s/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31961122,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-18T00:39:45.007Z","status":"online","status_checked_at":"2026-04-18T02:00:07.018Z","response_time":103,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["dot-env","express-js","mongo","vercel-deployment"],"created_at":"2025-07-02T00:11:13.484Z","updated_at":"2026-04-18T07:32:03.879Z","avatar_url":"https://github.com/meshal10613.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Project Name: HobbyHatch\n\n- [Client Live URL](https://assignment-10-hobby-hatch.web.app/)\n- [Server Live URL](https://assignment-10-server-xi-fawn.vercel.app/)\n\n## Project Purpose: HobbyHatch\n\nHobbyHatch is a web platform designed to help individuals connect through shared interests by discovering, joining, or creating local hobby-based groups. Whether it’s book clubs, hiking crews, painting circles, or any other passion-driven activity, HobbyHatch aims to build vibrant, interest-focused communities that foster real-life social engagement and meaningful connections.\n\nThis platform addresses the growing need for offline community and social interaction in an increasingly digital world. By offering an intuitive and accessible space for users to explore hobbies and meet like-minded people nearby, HobbyHatch empowers users to turn their personal interests into shared experiences.\n\n## 🔑 Key Features of HobbyHub\n\n1. Hobby Discovery\n- Browse a wide range of hobbies (e.g., photography, hiking, chess, painting).\n- Filter hobbies by category, popularity, or trending status.\n\n2. Local Group Finder\n- Search for nearby groups based on location and hobby.\n- View group details including member count, activity frequency, and upcoming events.\n\n3. Group Creation \u0026 Management\n- Users can start new hobby groups with customizable settings.\n\n4. Community Interaction\n- Reaction and comment features on posts and event pages.\n\n5. Mobile-Optimized \u0026 Responsive Design\n- Seamless experience across devices.\n\n## Dependencies\n\n- express js - [5.1.0](https://expressjs.com/)\n- mongo db - [6.16.0](https://www.mongodb.com/)\n- dotenv - [16.5.0](https://www.npmjs.com/package/dotenv)\n- cors - [2.8.5](https://www.npmjs.com/package/cors)\n\n## 🚀 Getting Started\n\nTo get the backend server up and running on your local machine, follow these simple steps.\n\n### Prerequisites\n\nMake sure you have **Node.js** and **npm** installed. **MongoDB** should also be installed and running.\n\n* **Node.js \u0026 npm:**\n    ```bash\n    npm install npm@latest -g\n    ```\n* **MongoDB:** [Install MongoDB](https://docs.mongodb.com/manual/installation/)\n\n### Running the Server\n\n1.  Create a **`.env`** file in the root of your project and add your environment variables:\n    ```env\n    PORT=3000\n    DB_USER=your_mongodb_username\n    DB_PASS=your_mongodb_password\n    ```\n    * `PORT`: The port your backend server will run on (defaulting to 3000 if not specified).\n    * `DB_USER` \u0026 `DB_PASS`: Your MongoDB Atlas cluster username and password.\n    * `NODE_ENV`: Set to `production` in production environments for secure cookie handling (`secure` and `sameSite` settings).\n2.  Start the backend server:\n    ```bash\n    npm start\n    ```\n    The server will typically run on the port specified in your `.env` file (e.g., `http://localhost:3000`).\n\n---\n\n## 🗺️ API Endpoints\n\nHere's a detailed overview of the API endpoints provided by this backend:\n\n| Method | Endpoint | Description | Authentication |\n| :------- | :----------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------- |\n| `GET` | `/user` | Retrieves a list of all users | Public |\n| `GET` | `/user/:id` | Retrieves user details, including a list of enrolled course IDs from the enrollments collection | Privet |\n| `POST` | `/user` | Creates a new user in the database | Public |\n| `PATCH` | `/user` | Update user data | Privet |\n| `GET` | `/hobbies` | Retrieves a list of all hobbies | Public |\n| `GET` | `/hobbies/:id` | Retrieves hobbies details, including a list of enrolled course IDs from the enrollments | Public |\n| `POST` | `/hobbies` | Creates new hobbies | Public |\n| `PUT` | `/hobbies/:id` | Updates the hobbies | Privet |\n| `DELETE` | `/hobbies/:id` | Delete a particuler hobbie | Privet |\n\n---\n\n## 🤝 Contributing\n\nContributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are **greatly appreciated**.\n\nIf you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag \"enhancement\".\n\n1.  Fork the Project\n2.  Create your Feature Branch (`git checkout -b feature/AmazingFeature`)\n3.  Commit your Changes (`git commit -m 'Add some AmazingFeature'`)\n4.  Push to the Branch (`git push origin feature/AmazingFeature`)\n5.  Open a Pull Request\n\n---\n\n## 📞 Contact\n\nSyed Mohiuddin Meshal - syedmohiuddinmeshal24@gmail.com","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmeshal10613%2Fhobby-hatch-s","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmeshal10613%2Fhobby-hatch-s","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmeshal10613%2Fhobby-hatch-s/lists"}