/rentIt-backend

This repository is a backend code of rental equipment platform that allows users to view and book rental equipment, and owners to list their stores and manage rentals. The platform features secure payment processing, booking logs, and comprehensive user and admin interfaces.

Primary LanguageJavaScript

RentIt - The Rental Store providing platform

This project is a rental equipment platform that allows users to view and book rental equipment, and owners to list their stores and manage rentals. The platform features secure payment processing, booking logs, and comprehensive user and admin interfaces.

This project is a comprehensive rental equipment platform that bridges the gap between users looking to rent equipment and owners wanting to list their stores. The platform is designed to streamline the rental process, making it efficient and user-friendly. Users can search for and book rental equipment based on various criteria such as categories, keywords, location, and availability. The platform supports secure payment processing via Razorpay, ensuring transactions are safe and reliable. Users and owners can track their rental activities through detailed booking logs.

Owners can list their stores, provide detailed descriptions, and manage rental bookings effortlessly.

The platform includes a robust admin interface that allows administrators to oversee the entire operation, including user management, owner request approvals, and rental store management. The admin can handle all CRUD operations for users and manage the store listings to ensure a seamless rental experience.

Key Features

User Functionality

  • User sign-in and sign-up.
  • Make owner requests to Admin with proof of store ownership.
  • Post stores for rent once the owner request is approved.
  • Search for rental stores based on categories, keywords, location, and availability.
  • View availability calendars and make booking requests.
  • Secure payment transactions via Razorpay
  • View booking logs.

Owner Functionality

  • List stores for rent with detailed information.
  • Manage bookings and respond to booking requests.

Admin Functionality

  • Manage user and owner sign-ins and sign-ups.
  • View and manage owner requests.
  • Manage users.
  • Oversee and manage store listings.
  • Handle booking requests and approve or reject them.
  • Monitor and maintain the overall health of the platform.

Technologies Used

  • Frontend: React.js
  • Backend: Node.js, Express.js, AWS S3 (For File Upload)
  • Database: MongoDB
  • Payment Integration: Razorpay

Database Design

Rentit DB Design

Project Documentation

Rentit - Project Documentation

API Documentation

Rentit - API Documentation