Skip to content

RentalWheels: A modern Android car rental app built with Kotlin and Firebase. Features include interactive map view, real-time car availability, seamless booking process, and in-app messaging. This project showcases best practices in Android development, including MVVM architecture, and Material Design 3.

Notifications You must be signed in to change notification settings

muchaisam/Rentalwheels

Repository files navigation

RentalWheels - Android Car Rental App

Project Status Kotlin Android Firebase

🚗 Project Overview

RentalWheels is an Android application that revolutionizes the car rental experience. Built with Kotlin and leveraging Firebase, this app allows users to easily browse, book, and manage car rentals from their mobile devices.

⚠️ Note: This project is currently in active development. Features and implementations are subject to change.

🌟 Key Features

  • User authentication and profile management
  • Interactive map view of available cars
  • Detailed car listings with high-quality images
  • Seamless booking process
  • In-app messaging between renters and car owners
  • Review and rating system
  • Push notifications for booking updates

🛠 Technologies Used

  • Kotlin
  • Android Jetpack components
  • Google Maps API
  • Firebase (Authentication, Realtime Database, Cloud Messaging)
  • MVVM Architecture
  • Coroutines for asynchronous operations
  • Material Design 3 components

🚀 Getting Started

Prerequisites

  • Android Studio Arctic Fox or later
  • JDK 11 or later
  • Android SDK with minimum API level 21

Installation

  1. Clone the repository:

git clone https://github.com/muchaisam/RentalWheels.git

  1. Open the project in Android Studio.
  2. Sync the project with Gradle files.
  3. Set up a Firebase project and add the google-services.json file to the app directory.
  4. Build and run the app on an emulator or physical device.

📱 App Structure

  • HomeFragment: Displays the map view and available cars
  • BrowseFragment: Lists all available cars for rental
  • BookingsFragment: Shows user's current and past bookings
  • ProfileFragment: User profile management and settings

📸 Screenshots

App Homepage screenshot Booking Screenshot

🧪 Testing

The project includes both unit tests and instrumentation tests:

  • Unit tests for ViewModels and Repositories
  • UI tests using Espresso
  • Integration tests for Firebase interactions

Run tests using Android Studio or via Gradle:

./gradlew test ./gradlew connectedAndroidTest

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

📄 License

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

📞 Contact

Muchai - @smuchai10

Project Link: https://github.com/muchaisam/RentalWheels

About

RentalWheels: A modern Android car rental app built with Kotlin and Firebase. Features include interactive map view, real-time car availability, seamless booking process, and in-app messaging. This project showcases best practices in Android development, including MVVM architecture, and Material Design 3.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published