A comprehensive Meeting Room Booking Service that allows users to book services online, manage their bookings through a secure dashboard, and process payments using AmarPay. The service is built using modern technologies such as React, TypeScript, Redux, NextUI, Tailwind CSS, Node.js, Express, MongoDB, and Imgbb for image hosting.
You can access the live version of the application here.
- Introduction
- Project Description
- Features
- Technology Stack
- Installation Guidelines
- Usage
- Contributing
- License
- Contact
Welcome to the Meeting Room Booking Service! This platform allows users to easily book room services online, manage their room, and make secure payments. Whether you are a user looking to keep your car clean or an admin managing the services, this platform provides a seamless experience.
This project is a full-fledged Meeting Room Booking service with the following key functionalities:
- User Authentication: Secure login and registration for users and admins.
- Service Booking: Users can book service slots for their rooms.
- Payment Integration: Integration with AmarPay for secure online payments.
- Admin Dashboard: Admins can manage bookings, view user data, and update services.
- Image Hosting: Imgbb is used for efficient image hosting.
- Responsive Design: The application is designed to work seamlessly on both mobile and desktop devices.
- Visit The Website: You can access the live version of the application here.
- User Roles: Supports both user and admin roles.
- Secure Dashboard: Users can manage their bookings and view their service history.
- Booking System: Users can select a service slot and confirm their booking.
- Payment Processing: Payments are handled securely through AmarPay.
- Admin Management: Admins have a dedicated dashboard to manage all operations.
- Service Management: Admins have a dedicated dashboard to manage all service and slots operations.
- User Management: User have a dedicated dashboard to manage all operations.
- Image Hosting: Images are uploaded and served via Imgbb.
- Frontend:
- React
- TypeScript
- Redux
- Tailwind CSS
- Backend:
- Node.js
- Express
- Mongoose (MongoDB)
- TypeScript
- Modular Pattern
- Payment Integration: AmarPay
- Image Hosting: Imgbb
- Deployment: Vercel
To run this project locally, follow these steps:
-
Clone the Repository:
git clone https://github.com/Sumon-DevCoder/meeting-room-booking-client.git cd meeting-room-booking-client Public
-
Install Dependencies:
npm install
-
Set Up Environment Variables: Create a
.env
file in the root directory with the following content:VITE_WORKSPACE=development VITE_BASE_URL=https://meeting-room-booking-server-zeta.vercel.app/api VITE_LIVE_URL=https://meeting-room-booking-server-zeta.vercel.app VITE_IMGBB_API_KEY=import.meta.env.VITE_IMGBB_API_KEY VITE_AMARPAY_API_KEY=your_amarpay_api_key
-
Run the Development Server:
npm run dev
-
Build the Project:
npm run build
-
Run the Backend Server:
npm run dev
-
Create a
.env
file in the root directory and add your environment variables:DB_URL=mongodb+srv://<username>:<password>@cluster0.0i0xa.mongodb.net/meetingRoomDB?retryWrites=true&w=majority&appName=Cluster0 PORT=5000 BCRYPT_SALT_ROUND=12 NODE_ENV=development # payment credential (REDACTED) STORE_ID="aamarpaytest" SIGNETURE_KEY="dbb74894e82415a2f7ff0ec3a97e4183" PAYMENT_URL="https://sandbox.aamarpay.com/jsonpost.php" PAYMENT_VERIFY_URL="https://sandbox.aamarpay.com/api/v1/trxcheck/request.php" # admin credentials (REDACTED) admin_email=****\*\*\***** admin_password=****\*\*\***** admin_mobile_number=****\*\*\***** admin_image=****\*\*\***** # jwt credentials (REDACTED) JWT_ACCESS_SECRET=secret JWT_ACCESS_EXPIRES_iN=365d JWT_REFRESH_SECRET=refreshscret JWT_REFRESH_EXPIRES_IN=365d BACKEND_LIVE_URL=https://meeting-room-booking-server-zeta.vercel.app/
- User Dashboard: Access your bookings, make new bookings, and manage your account.
- Admin Dashboard: Manage all user bookings, update services, and monitor system operations.
We welcome contributions! Please read our contributing guide for more details.
This project is licensed under the MIT License - see the LICENSE file for details.
Project Maintainer: Mustafizur Rahman Sumon
For more information, visit our backend gitHub website. FrontEnd live link website. BackEnd live link website/api.
- Special thanks to Mustafizur Rahman Sumon for their contributions.
- This project is powered by React, Node.js, and AmarPay.
- How do I book a service?
- Navigate to the booking section, select your desired service and time slot, and proceed to payment.
- How can I manage my bookings?
- Log in to your user dashboard to view and manage your bookings.
- Is payment secure?
- Yes, all payments are processed securely through AmarPay.