Skip to content

The Meeting Room Booking System is a web-based application designed to streamline the process of reserving meeting rooms within an organization. It provides an intuitive, user-friendly interface for employees and administrators to manage room bookings efficiently

Notifications You must be signed in to change notification settings

Sumon-DevCoder/meeting-room-booking-client

Repository files navigation

Meeting Room Booking Service

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.

Live URL

You can access the live version of the application here.

Table of Contents

Introduction

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.

Project Description

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.

Features

  • 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.

Technology Stack

  • Frontend:
    • React
    • TypeScript
    • Redux
    • Tailwind CSS
  • Backend:
    • Node.js
    • Express
    • Mongoose (MongoDB)
    • TypeScript
    • Modular Pattern
  • Payment Integration: AmarPay
  • Image Hosting: Imgbb
  • Deployment: Vercel

Installation Guidelines

To run this project locally, follow these steps:

  1. Clone the Repository:

    git clone https://github.com/Sumon-DevCoder/meeting-room-booking-client.git
    cd meeting-room-booking-client
    Public
    
  2. Install Dependencies:

    npm install
  3. 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
  4. Run the Development Server:

    npm run dev
  5. Build the Project:

    npm run build
  6. Run the Backend Server:

    npm run dev
  7. 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/

Usage

  • User Dashboard: Access your bookings, make new bookings, and manage your account.
  • Admin Dashboard: Manage all user bookings, update services, and monitor system operations.

Contributing

We welcome contributions! Please read our contributing guide for more details.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contact

Project Maintainer: Mustafizur Rahman Sumon

For more information, visit our backend gitHub website. FrontEnd live link website. BackEnd live link website/api.

Acknowledgements

FAQ

  • 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.

About

The Meeting Room Booking System is a web-based application designed to streamline the process of reserving meeting rooms within an organization. It provides an intuitive, user-friendly interface for employees and administrators to manage room bookings efficiently

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages