A car rental flutter application using firebase and google maps API

Overview

GitHub license Safe Dart Flutter Figma Firebase

hopnOnPoster (1)

A car sharing & rental app using Flutter, Firebase & Google Maps APIs ๐Ÿ”ฅ



About the App ๐Ÿš˜

  • hopOn is flutter based application for car sharing and rental services.

  • The two main functions that app includes are -

    1. Rent a nearby car
    2. Give your car on rent
  • The app uses 3 Google Maps API

    1. Geocoding API (provides geocoding and reverse geocoding of addresses)
    2. Places API (returns information about places using HTTP requests)
    3. Directions API (returns JSON or XML-formatted directions between locations)
  • If user wants to rent a car he/she has to search for a dropOff location, after selecting a location(from suggestions) user gets the cost of ride with options to select pickup and dropOff dates.

  • After this information user gets a list of cars which are available in his/her nearby area. On the selection of any of the cars it shows all the information about car- owner's name, car's rent etc. After this you can pay and your ride will be booked.

  • For payments app uses Razorpay Demo platform (package in flutter)

  • Once the payment is done, it saves the data in Firebase Realtime Database. Along with saving ride history on user's end who has booked this ride, information about the rented car also gets saved on the owner side where he can see who has rented his/her car with some information about the ride. A User can cancel a ride anytime.

  • You can give your car on rent by just providing some information about the car your're registering like image, model name etc. It gets save in Firebase Firestore. After registerting your car you have an option to give your car on rent or to remove it from rent anytime you want.

Wireframe โœ’๏ธ

In action ๐Ÿ‘€

1. Rent a car

Logo


2. Give your car on rent

Logo



3. Rented car's details

Logo



Some important things to note

  • If you're trying to make changes or to contribute in this project, please make sure you have a brand new Firebase project and connect that with Google Cloud Platform to access maps features.
  • Follow these steps if you're new to Firebase.
  • GCP gives you $200 free on your first project, you just have to link your project with a billing account. Please follow official docs for more details.
  • In GCP under API & SERVICES make sure you have enabled these 3 APIs along with API FOR Android/iOS.
  • Test if your API key if working perfectly else restricts the keys with a particular API service.
  • !!THE MOST IMPORATNT POINT!!
  • Make sure your project is under Google Maps Platform services otherwise you can't have access to these APIs even if you have enabled it successfully. It will not grant permission to use the API and you'll get errors afterwards.
  • If you have your project under GMP service(either you can use GCP or GMP for a project) your firebase project won't work here, so here is the solution we followed:
  • We made a firebase project named as 'hopOnFirebase', we connected that with GCP(because firebase project only connects to GCP) and flutter app.
  • We made another project "mapsProject" which follows GMP because it is a GMP project, now you can enable and use these 3 APIs.
  • Generate your API key(restrict them to these 3 API services only).
  • Your flutter app is connected to Firebase project "hopOnFirebase". Now you can use this API key(Key of "mapsProject" ) into you flutter app(connected with "hopOnFirebase")
  • That's all!

Keep Going!!!

  • Feel free to ask your doubts and contribute to this project.
  • Do โญ the repo if you like the work! ๐Ÿ™Œ
You might also like...

A Flutter plugin for integrating Google Maps in iOS, Android and Web applications

flutter_google_maps A Flutter plugin for integrating Google Maps in iOS, Android and Web applications. It is a wrapper of google_maps_flutter for Mobi

Sep 26, 2022

Aplications with google maps and geolocation

Aplications with google maps and geolocation

Aplications with google maps and geolocation

Jul 26, 2022

A flutter plugin for Google Maps

A flutter plugin for Google Maps

IMPORTANT: This plugin is no longer under development Why? We initially built this plugin to fill an early gap in flutter. Since then, Google has made

Dec 29, 2022

Flutter Google Maps Tutorial

Flutter Google Maps Tutorial YouTube Video Setup Get an API Key at https://cloud.google.com/maps-platform/ Enable Maps SDK for Android, Maps SDK for i

Nov 30, 2022

Easy Google Maps for Flutter

Easy Google Maps for Flutter

easy_google_maps Easy Google Maps for Flutter on Web and Mobile Getting Started Mobile Follow setup for Mobile Here Web Good to go! EasyGoogleMaps(

Jul 19, 2022

Place picker on Google Maps for Flutter

Place picker on Google Maps for Flutter

Google Maps Place Picker A Flutter plugin which provides 'Picking Place' using Google Maps widget. The project relies on below packages. Map using Flu

Dec 16, 2022

Simple flutter app demonstrating usage of Google Maps

flutter_maps_example Get an API key at GoogleCloud. Enable Google Map SDK for ea

Nov 23, 2022

A flutter plugin that's decodes encoded google poly line string into list of geo-coordinates suitable for showing route/polyline on maps

A flutter plugin that's decodes encoded google poly line string into list of geo-coordinates suitable for showing route/polyline on maps

flutter_polyline_points A flutter plugin that decodes encoded google polyline string into list of geo-coordinates suitable for showing route/polyline

Oct 25, 2022

Flutter Google Maps My Track

Flutter Google Maps My Track

mytracker We invite you to subscribe to the Alpha flutter code channel on Youtub

Oct 31, 2022
Comments
  • Cant Run

    Cant Run

    Hey Shivani,

    First of all thanks to you for uploading fantastic project.

    My concern is, I cant run this file at my end, can you remake this app with a video tutorial ? That will be great and very helpful for many peeps!

    Or just a make a tutorial, guide us start to end.

    Thank you.

    opened by rk9894 0
  • Confused with setting up

    Confused with setting up

    Hey!

    Would you be able to make a video on how to set up the project, or maybe go more in detail about setting it up? Because im confused about how to connect the APIs with firebase and with the app its a bit overwhelming. Love your project tho!

    opened by Tamer7 4
  • problem occurred configuring project ':image_cropper'.

    problem occurred configuring project ':image_cropper'.

    Hello there sister, i have tried running your hop-on, flutter , but this is the error im receiving please help.

    FAILURE: Build failed with an exception.

    • What went wrong: A problem occurred configuring project ':image_cropper'.

    Could not resolve all dependencies for configuration ':image_cropper:classpath'. Could not load module metadata from C:\Users\MTGSTCKN.gradle\caches\modules-2\metadata-2.71\descriptors\com.android.tools.lint\lint-gradle-api\26.6.3\fc7e8eef251519086b6ee9788cba4dd2\descriptor.bin Could not get unknown property 'android' for project ':image_cropper' of type org.gradle.api.Project.

    • Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

    • Get more help at https://help.gradle.org

    BUILD FAILED in 46s Running Gradle task 'assembleRelease'...
    Running Gradle task 'assembleRelease'... Done 54.5sGradle task assembleRelease failed with exit code 1

    opened by shuaibidshuaib 1
  • Issue on  error building apk

    Issue on error building apk

    Hello there sister, after downloading your project, just by inserting and running "Flutter build apk --release" , i got the following error, pls help me to sort it out. Running Gradle task 'assembleRelease'...

    FAILURE: Build failed with an exception. Running Gradle task 'assembleRelease'...

    Running Gradle task 'assembleRelease'...

    • What went wrong: Running Gradle task 'assembleRelease'...

    java.net.BindException: Address already in use: Cannot bind Running Gradle task 'assembleRelease'...

    Running Gradle task 'assembleRelease'...

    • Try: Running Gradle task 'assembleRelease'...

    Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights. Running Gradle task 'assembleRelease'...

    Running Gradle task 'assembleRelease'... * Get more help at https://help.gradle.org Running Gradle task 'assembleRelease'... Running Gradle task 'assembleRelease'... Done 36.9s Gradle task assembleRelease failed with exit code 1

    C:\Users\MTGSTCKN\Downloads\Compressed\hopOn-master\hopOn-master\lib>

    opened by shuaibidshuaib 3
Owner
Shivani Singh
Flutter Developer | UX/UI
Shivani Singh
A migration of Google Maps Application with Flutter & Google Maps APIs including: Maps SDK for Android & IOS, Places API & polylines

google_maps A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you started if t

TAD 1 Mar 4, 2022
Flutter Maps A Flutter app using Google Maps SDK & Directions API

Flutter Maps A Flutter app using Google Maps SDK & Directions API Plugins The plugins used in this project are: google_maps_flutter geolocator flutter

Salsabil Mohamed Hemada 1 Jul 15, 2022
A Flutter app using Google Maps SDK & Directions API

Flutter Maps A Flutter app using Google Maps SDK & Directions API Plugins The plugins used in this project are: google_maps_flutter geolocator flutter

Youhaan bootwala 1 Mar 18, 2022
A Flutter app using Google Maps SDK & Directions API

Flutter Maps A Flutter app using Google Maps SDK & Directions API Plugins The plugins used in this project are: google_maps_flutter geolocator flutter

Varun CN 2 Apr 19, 2022
A Flutter app using Google Maps SDK & Directions API

Flutter Maps A Flutter app using Google Maps SDK & Directions API Plugins The plugins used in this project are: google_maps_flutter geolocator flutter

Tsenda LAB 1 Mar 28, 2022
A Flutter app using Google Maps SDK & Directions API

Flutter Maps A Flutter app using Google Maps SDK & Directions API Plugins The plugins used in this project are: google_maps_flutter geolocator flutter

Dreamfullstacker 16 Dec 31, 2022
This is a Flutter package that uses the Google Maps API to make a TextField that tries to autocomplete places as the user types, with simple smooth animations, making a nice UI and UX.

search_map_place This is a Flutter package that uses the Google Maps API to make a TextField that tries to autocomplete places as the user types, with

Lucas Bernardi 127 Oct 22, 2022
Google Maps Services API Client for Dart

google_maps_services_dart (EXPERIMENTAL) API Specification for Google Maps Platform This Dart package is automatically generated by the OpenAPI Genera

Tuyen VU 0 Nov 1, 2021
A Flutter plugin which provides 'Picking Place' using Google Maps widget

Google Maps Places Picker Refractored This is a forked version of google_maps_place_picker package, with added custom styling and features.

Varun 5 Nov 13, 2022
Flutter package to enable clustering of location markers on Google Maps using widgets specific to each location.

flutter_google_maps_widget_cluster_markers This widget implements a very specific adaptation of google_maps_cluster_manager, allowing different ,marke

Kek Tech 2 Jan 6, 2023