{"id":29313816,"url":"https://github.com/meshal10613/zap-shift-server","last_synced_at":"2026-05-08T19:33:32.546Z","repository":{"id":300981303,"uuid":"1007643191","full_name":"meshal10613/zap-shift-server","owner":"meshal10613","description":"The backend of ZapShift is built with Node.js, Express.js, MongoDB, CORS, and dotenv. It serves as the API layer and handles business logic, data storage, user authentication, and role-based access for admins, riders, and regular users.","archived":false,"fork":false,"pushed_at":"2025-08-02T13:22:01.000Z","size":67,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-09-05T21:52:11.366Z","etag":null,"topics":["dotenv","express-js","jwt","mongodb"],"latest_commit_sha":null,"homepage":"http://localhost:3000/","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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-06-24T10:00:56.000Z","updated_at":"2025-08-02T13:22:04.000Z","dependencies_parsed_at":"2025-08-02T15:13:23.050Z","dependency_job_id":"d7943047-c6f6-45a8-b250-69df4dcfb56c","html_url":"https://github.com/meshal10613/zap-shift-server","commit_stats":null,"previous_names":["meshal10613/zap-shift-server"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/meshal10613/zap-shift-server","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meshal10613%2Fzap-shift-server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meshal10613%2Fzap-shift-server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meshal10613%2Fzap-shift-server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meshal10613%2Fzap-shift-server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/meshal10613","download_url":"https://codeload.github.com/meshal10613/zap-shift-server/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meshal10613%2Fzap-shift-server/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32794716,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-08T08:22:46.396Z","status":"ssl_error","status_checked_at":"2026-05-08T08:22:45.650Z","response_time":54,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6: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":["dotenv","express-js","jwt","mongodb"],"created_at":"2025-07-07T10:21:26.625Z","updated_at":"2026-05-08T19:33:32.531Z","avatar_url":"https://github.com/meshal10613.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Project Name: ZapShift\n\n- [Client Live URL](http://localhost:5173/)\n- [Server Live URL](http://localhost:3000/)\n\n## Project Purpose: ZapShift\n\nZapShift is a parcel delivery management platform designed to streamline the logistics process for both businesses and individuals. It connects users, riders (delivery personnel), and admins through a centralized system, allowing for efficient, transparent, and trackable parcel delivery services. The platform eliminates manual processes, improves real-time coordination, and enhances the customer experience with faster and more reliable deliveries.\n\n## 🔑 Key Features of ZapShift\n\n### 👤 User Features:\n- User Registration/Login: Secure authentication system for parcel senders.\n\n- Parcel Booking: Easily create a delivery request with parcel details and destination.\n\n- Real-Time Tracking: Track the delivery status and location of parcels.\n\n- Payment System: Pay delivery charges and view payment history (Paid/Unpaid status).\n\n- Parcel History: View all previously sent parcels with status and cost.\n\n### 🧍‍♂️ Rider Features:\n- Rider Dashboard: Access assigned deliveries with parcel details and user contact info.\n\n- Update Delivery Status: Change the status of the parcel (Picked up, In transit, Delivered).\n\n- Location Update: Share current location (for tracking purposes).\n\n- Daily Summary: View daily parcel count and earnings summary.\n\n### 🛠️ Admin Features:\n- User \u0026 Rider Management: Add, edit, or remove users and riders.\n\n- Parcel Oversight: Monitor all active/inactive parcels, statuses, and payment information.\n\n- Analytics Dashboard: View delivery stats, revenue, and performance indicators.\n\n- Region \u0026 Warehouse Management: Assign riders to specific regions or warehouses.\n\n- Manual Overrides: Update parcel status or assign riders manually if needed.\n\n### ⚙️ Technical Highlights:\n- Backend: Express.js with MongoDB for scalable API and database operations.\n\n- Security: Environment variables managed with dotenv, CORS for secure cross-origin requests.\n\n- Role-Based Access Control: Separate features and permissions for Admin, Rider, and User.\n\n- Responsive Design (Frontend): (Assuming you're using React) User-friendly interface for all device sizes.\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` | `/parcels` | Retrieves a list of all parcels | Public |\n| `POST` | `/parcels` | Creates a new parcel in the database | Privet |\n| `DELETE` | `/parcels/:id` | Delete a particuler parcel | Privet |\n| | This project is running | More APIs will added |\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%2Fzap-shift-server","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmeshal10613%2Fzap-shift-server","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmeshal10613%2Fzap-shift-server/lists"}