obada-jaras / RoverRental

Rover Rental is a car rental app connecting users to rent cars from each other. Offers a user-friendly interface for searching and booking rentals and managing car listings. Built with Java and Android Studio, uses Firebase for data storage and retrieval. Convenient solution for car rental needs, whether you're a user or car owner.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Rover Rental

Rover Rental is a car rental application for freelancers to rent their cars to customers, through an application, users can access the data added by the company and other users and rent any car.

This application will allow users to search for cars for rental based on specific requirements such as location, pick up and drop off dates. Users can check several information added about the cars and rent any car based on the user’s preference.

In our application, as it provides an environment for freelancers, users will be able to add cars of their own for rental, they add several information required about the car, and then it is shared on the application’s homepage for other users to view it.

To view the app you can download app-debug.apk and install it to your Android device.




Firebase Data Structure

The database for this project is based on Firebase Realtime Database and Firebase Storage. The data in the Firebase Realtime Database is structured in the following format:

users: {
    [userID]: {
        firstName: "",
        lastName: "",
        dob: "[date of birth]",
        gender: "[Male or Female]",
        phoneNumber: "",
        email: "",
        password: "",
        activities (optional): {
            offers (optional): {
                [offerID]: ""
            },
            rentals (optional): {
                [rentalID]: ""
            },
            transactions (optional): {
                [transactionID]: ""
            },
            feedbacks (optional): {
                [feedbackID]: ""
            }
        }
    }
},

cars: {
    [carID]: {
        brand: "",
        modelYear: "",
        motorType: "",
        price: "[price per day]",
        transmission: "[Manual or Automatic]",
        seats: "[number of seats]",
        carOwner: "[userID]",
        location: "[city name]",
        lat_long: "[latitude,longitude]",
        bookings (optional): {
            [bookingID]: {
                fromDate: "",
                toDate: "",
                paymentMethod: "[onSite or Visa]",
                totalPrice: "",
                userID: "[rented user account number]"
            }
         },
         feedbacks (optional): {
            [userID]: {
               rating: "[number from 1 to 5]",
               comment: ""
            }
        }
    }
}

The Firebase Storage is used to save users and cars photos. User images are saved as /images/users/[userID].png, while car images are saved as /images/cars/[carID].jpg.




Testing the Application

For testing purposes, you can use the following login credentials:

Email: test@gmail.com
Password: 123456ee




App Activities:

  • Splash Screen

    image

  • Registration Page

    image

  • Log in Page

    image

  • Home Page

    image

  • Available Cars Page

    image

  • Cars Details

    image

  • Confirm Selection Page

    image

  • Payment Page

    image

  • Add Car Page

    image

  • Feedback and Rating Page

    image

  • About Us Page

    image

  • Contact Us Page

    image

  • User Profile Page

    image

  • Update Profile Page

    image

  • User Activity Page

    image

About

Rover Rental is a car rental app connecting users to rent cars from each other. Offers a user-friendly interface for searching and booking rentals and managing car listings. Built with Java and Android Studio, uses Firebase for data storage and retrieval. Convenient solution for car rental needs, whether you're a user or car owner.


Languages

Language:Java 100.0%