{"id":25271812,"url":"https://github.com/tariqul420/service-orbit-server","last_synced_at":"2026-04-13T06:06:58.263Z","repository":{"id":271827019,"uuid":"914244950","full_name":"tariqul420/Service-Orbit-Server","owner":"tariqul420","description":"This is the backend server for the Service Orbit application, a service-sharing platform that connects service providers with customers. This server handles authentication, service management, and other backend functionalities using Node.js, Express.js, MongoDB, and JWT.","archived":false,"fork":false,"pushed_at":"2025-02-11T06:14:51.000Z","size":19,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-11T07:23:53.518Z","etag":null,"topics":["cookieparser","cors","dotenv","expressjs","jwt","mongodb","nodejs"],"latest_commit_sha":null,"homepage":"https://service-orbit.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/tariqul420.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}},"created_at":"2025-01-09T08:17:23.000Z","updated_at":"2025-02-11T06:14:54.000Z","dependencies_parsed_at":null,"dependency_job_id":"b97f75d6-6abe-4491-bcd7-d30a13a76aa0","html_url":"https://github.com/tariqul420/Service-Orbit-Server","commit_stats":null,"previous_names":["tariqul420/service-orbit-server"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tariqul420%2FService-Orbit-Server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tariqul420%2FService-Orbit-Server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tariqul420%2FService-Orbit-Server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tariqul420%2FService-Orbit-Server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tariqul420","download_url":"https://codeload.github.com/tariqul420/Service-Orbit-Server/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247445715,"owners_count":20939970,"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":["cookieparser","cors","dotenv","expressjs","jwt","mongodb","nodejs"],"created_at":"2025-02-12T12:36:08.727Z","updated_at":"2026-04-13T06:06:58.228Z","avatar_url":"https://github.com/tariqul420.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Service Orbit Backend\n\nThis is the backend server for the **Service Orbit** application, a service-sharing platform that connects service providers with customers. This server handles authentication, service management, and other backend functionalities using Node.js, Express.js, MongoDB, and JWT.\n\n## 🚀 Project Overview\n\n- **Framework**: Node.js\n- **Database**: MongoDB\n- **Authentication**: JWT with cookies\n- **Environment Variables**: Managed using `.env` file\n\n---\n\n## 📜 Features\n\n### 🔐 Authentication\n\n- JWT-based authentication.\n- Secure cookie storage for tokens.\n- Login and logout endpoints.\n\n### 📦 Services Management\n\n- Add, update, delete, and fetch services.\n- Search services by name.\n- Fetch popular services and banner data.\n\n### 📑 Bookings Management\n\n- Add and fetch booked services.\n- Manage booking status.\n\n### 🔧 Middleware\n\n- `verifyToken`: Verifies the JWT token for protected routes.\n\n---\n\n## 🛠 Technology Used\n\n- **Node.js**: Backend framework.\n- **Express.js**: Web server.\n- **MongoDB**: Database.\n- **JWT**: Authentication.\n- **dotenv**: Environment variable management.\n- **cors**: Cross-Origin Resource Sharing.\n- **cookie-parser**: For handling cookies.\n\n---\n\n## 🔗 Endpoints\n\n### Public Endpoints\n\n- `/jwt` - Generate JWT token.\n- `/logout` - Clear JWT token.\n- `/banner` - Fetch banner data.\n- `/popular-services` - Fetch top 4 popular services.\n- `/all-services` - Fetch all services with optional search query.\n- `/service-details/:id` - Fetch service details by ID.\n\n### Protected Endpoints (Require JWT)\n\n- `/add-service` - Add a new service.\n- `/add-purchase` - Add a purchase request.\n- `/manage-service` - Fetch all services for a specific provider.\n- `/manage-service/:id` - Delete a specific service by ID.\n- `/update-service/:id` - Update a service by ID.\n- `/booked-service` - Fetch all booked services for a user.\n- `/service-todo` - Fetch all tasks assigned to a service provider.\n- `/service-todo-update-status/:id` - Update booking status.\n\n---\n\n## 🚀 Installation\n\n### Prerequisites\n\n- Node.js and npm installed.\n- MongoDB connection string.\n\n### Steps to Run Locally\n\n1. Clone the client-side repository:\n\n   ```bash\n   git clone https://github.com/tariqul420/Service-Orbit-Server.git\n   cd Service-Orbit-Server\n   ```\n\n2. Install dependencies:\n\n   ```bash\n   npm install\n   ```\n\n3. Start the server:\n\n   ```bash\n   node index.js\n   ```\n\n   --- OR ---\n\n   ```bash\n   nodemon index.js\n   ```\n\n4. Open the project in a code editor:\n   ```bash\n   code .\n   ```\n5. Add the `.env` file in the root directory and include the following environment variables:\n   ```bash\n   DATABASE_USERNAME=YOUR_DATABASE_USERNAME\n   DATABASE_PASSWORD=YOUR_DATABASE_PASSWORD\n   ACCESS_TOKEN_SECRET=YOUR_ACCESS_TOKEN_SECRET\n   ```\n   \u003e **Note:** Replace the `index.js` file's `your_mongo_connection_string` and the `.env` file's `YOUR_DATABASE_USERNAME`, `YOUR_DATABASE_PASSWORD`, and `YOUR_ACCESS_TOKEN_SECRET` with actual values.\n\n## 🔗 Useful Links\n\n- **Frontend Repository:** [_github/tariqul420/client_](https://github.com/tariqul420/Service-Orbit.git)\n- **Live Site:** [_Service-Orbit.com_](https://service-orbit.web.app)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftariqul420%2Fservice-orbit-server","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftariqul420%2Fservice-orbit-server","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftariqul420%2Fservice-orbit-server/lists"}