{"id":24905653,"url":"https://github.com/omgupta12/roombooking_application","last_synced_at":"2026-04-13T19:31:23.354Z","repository":{"id":275022993,"uuid":"924818715","full_name":"Omgupta12/RoomBooking_Application","owner":"Omgupta12","description":null,"archived":false,"fork":false,"pushed_at":"2025-01-30T18:07:40.000Z","size":125,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-30T19:23:40.957Z","etag":null,"topics":["calender","context-api","expressjs","mongodb","mongodb-atlas","mongoose","nodejs","react-router","reactjs","tailwindcss"],"latest_commit_sha":null,"homepage":"https://room-booking-application-by-om.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/Omgupta12.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-30T17:52:21.000Z","updated_at":"2025-01-30T18:10:09.000Z","dependencies_parsed_at":"2025-01-30T19:23:45.504Z","dependency_job_id":"98efd7be-514a-4c46-82bf-485e69791963","html_url":"https://github.com/Omgupta12/RoomBooking_Application","commit_stats":null,"previous_names":["omgupta12/roombooking_application"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Omgupta12%2FRoomBooking_Application","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Omgupta12%2FRoomBooking_Application/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Omgupta12%2FRoomBooking_Application/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Omgupta12%2FRoomBooking_Application/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Omgupta12","download_url":"https://codeload.github.com/Omgupta12/RoomBooking_Application/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245931756,"owners_count":20695958,"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":["calender","context-api","expressjs","mongodb","mongodb-atlas","mongoose","nodejs","react-router","reactjs","tailwindcss"],"created_at":"2025-02-02T00:23:51.158Z","updated_at":"2026-04-13T19:31:23.307Z","avatar_url":"https://github.com/Omgupta12.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Room Booking Management System\n\nA full-stack Room Booking Management System built with React (frontend) and Node.js with Express (backend). Users can register, log in, search for available rooms, book rooms, and manage their bookings. Key features include user authentication via JWT, room search by date/type, booking creation, view booking history, and booking cancellation. Built with MongoDB, Mongoose, and Axios for HTTP requests.\n\n## Features\n\n- User authentication (sign-up, login)\n- Room listing with search and filter functionality\n- Room details page with booking form\n- Calendar for selecting booking dates\n- Booking history for users\n- API endpoints for room booking management\n- Secure booking logic with real-time availability checks\n- Overlapping booking prevention\n\n## Tech Stack\n\n### Frontend:\n- React.js (Vite)\n- React Router\n- Axios (for API requests)\n- Tailwind CSS (for styling)\n\n### Backend:\n- Node.js\n- Express.js\n- MongoDB (Database)\n- JWT Authentication\n- dotenv (for environment variables)\n- Mongoose (ORM)\n\n## Installation \u0026 Setup\n\n### Prerequisites\nEnsure you have the following installed:\n- [Node.js](https://nodejs.org/en/download/)\n- [MongoDB](https://www.mongodb.com/try/download/community)\n\n### Clone the Repository\n```sh\ngit clone https://github.com/Omgupta12/RoomBooking_Application.git\ncd RoomBooking_Application\n```\n### Backend Setup\n- Navigate to the backend directory: cd backend\n- Install dependencies: npm install\n- Create a .env file in the backend directory and add the following:\n- PORT=5000\n- DATABASE_URL=mongodb://localhost:27017/roombooking\n- JWT_SECRET=your_secret_key\n- Start the backend server: npm start\n\n### Frontend Setup\n- Navigate to the frontend directory: cd frontend\n- Install dependencies: npm install\n- Start the frontend application: npm run dev\n\n### Running the Application\n- The backend will be running at http://localhost:5000 or http://localhost:8000\n- The frontend will be running at http://localhost:5173\n  \n### API Endpoints\n| Function Name          | HTTP Method | Endpoint                               | Description                          |\n|------------------------|-------------|----------------------------------------|--------------------------------------|\n| registerUser           | POST        | /api/auth/register                      | User registration                    |\n| loginUser              | POST        | /api/auth/login                        | User login                           |\n| fetchRooms             | GET         | /api/rooms                             | Fetch available rooms                |\n| fetchRoomDetails       | GET         | /api/rooms/:roomId                     | Fetch details of a specific room     |\n| createBooking          | POST        | /api/bookings                          | Create a booking                     |\n| cancelBooking          | DELETE      | /api/bookings/:bookingId               | Cancel a booking                     |\n| fetchAvailableSlots    | GET         | /api/bookings/available-slots/:roomId/:date | Fetch available slots for a room|\n\n# App Screenshots\n\n## Screenshot 1: Room Listing Page\n\nHere user see list of rooms :\n\n![Rooms List](https://github.com/user-attachments/assets/4c68aecc-ed07-4118-9f52-ec316388c9cd)\n\n\n## Screenshot 2: User Registration\n\nHere is what the user registration screen looks like:\n\n![User Registration](https://github.com/user-attachments/assets/89be239e-18f0-4ef2-8f38-b92d2769f187)\n)\n## Screenshot 3: User Login\n\nHere is what the user login screen looks like:\n\n![User Login](https://github.com/user-attachments/assets/e319c3ef-346d-448c-822d-8dfc64fa2506)\n\n)\n\n## Screenshot 3: Room Booking\n\nHere is the room booking screen:\n\n![Room Booking](https://github.com/user-attachments/assets/e664e8eb-157a-4295-a404-bac1315307a9)\n\n## Screenshot 4: Booking History\n\nThe booking history page displays the user's previous bookings:\n\n![Booking History](https://github.com/user-attachments/assets/9a6df883-4e5c-41a6-8ac0-7ec5dc663c7b)\n\n\n\n\n\n\n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fomgupta12%2Froombooking_application","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fomgupta12%2Froombooking_application","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fomgupta12%2Froombooking_application/lists"}