A Mobile Dart/Flutter App built on Firestore. App allows you to use your camera to take a picture of where you are, add details and attach a GPS location to it, which will then provide you with an address as well. Store all your favorite places and exactly where you took that picture!
This app is based on GREAT PLACES APP - Created by Academind by Maximilian Schwarzmüller (Learn Flutter and Dart to Build iOS and Android Apps 2020) Great Places.
Front-end design of Onboarding Screen inspired by @mkobuolys Onboarding Concept
- Local storage usage for in-app photos using Paths and Path_Provider.
- Uses Cloud Firestore DB for relevant data taken.
- Uses FirebaseUI for authentication.
- Uses Native Camera feature to snap photos.
- Uses Google Maps for current location (Native GPS) and latitude/longitude of where the picture was taken.
- Accesses GoogleMaps for interactive mapping and marker pinning.
- Reverse geocoding used to provide address of where the photo was taken or where the marker was added.
These are the available plugins in this repository.
Plugin | Pub | Points | Popularity | Likes |
---|---|---|---|---|
cloud_firestore | ||||
firebase_auth | ||||
firebase_core | ||||
google_maps_flutter | ||||
image_picker | ||||
location | ||||
path_provider |
You can follow these instructions to build the app and install it onto your device.
If you are new to Flutter, please first follow the Flutter Setup guide.
git clone git clone https://harpreet_k@bitbucket.org/harpreet_k/great_places_flutter.git
cd great_places_flutter
flutter run
The flutter run
command both builds and installs the Flutter app to your device or emulator.
- [Set up your Android app for Firestore][setup-android]
- In the Authentication tab of the Firebase console go to the
[Sign-in Method][auth-providers] page and enable 'Email/Password' and 'Anonymous'.
- This app uses [FirebaseUI][firebaseui] for authentication.
- Run the app on an Android emulator.
Before using/testing the application, you need a new API key. Follow the instructions at Maps SDK for Android — Get API Key. Once you have your API key, add it to your Flutter app in the application manifest (android/app/src/main/AndroidManifest.xml), as follows:
...
<manifest ...
<application ...
<meta-data android:name="com.google.android.geo.API_KEY"
android:value="YOUR KEY HERE"/>
...
The MIT License (MIT)