Skip to content

A Flutter app to save and manage your favorite places. Features include adding locations, attaching images, viewing them on Google Maps, and persistent local storage using SQLite, with Riverpod for state management.

Notifications You must be signed in to change notification settings

aljalo/favorite_places

Repository files navigation

Favorite Places

A Flutter application to save and manage your favorite places, utilizing Riverpod for state management.

Features

  • Add New Places: Save places with a title, image, and location.
  • Location Integration: Pick locations from a map or use the current location.
  • Image Integration: Capture and attach images from the camera.
  • Persistent Storage: Saves data locally using SQLite.
  • Map View: View the saved places on Google Maps.

Project Structure

favorite-places/
├── android/
├── ios/
├── lib/
│   ├── models/
│   │   ├── place.dart
│   │   ├── place_location.dart
│   ├── providers/
│   │   ├── places_provider.dart
│   ├── screens/
│   │   ├── add_place_screen.dart
│   │   ├── map_screen.dart
│   │   ├── places_screen.dart
│   ├── widgets/
│   │   ├── image_input.dart
│   │   ├── location_input.dart
│   ├── main.dart
├── test/
├── pubspec.yaml

Key Files and Folders

  • models/: Contains data models.
  • providers/: Holds the Riverpod providers for managing app state.
  • screens/: Contains the UI screens for different views.
  • widgets/: Contains reusable UI components.

Dependencies

Below is a list of dependencies used in this project:

Flutter:  The core Flutter framework.
cupertino_icons:     Icons based on Apple's iOS design guidelines.
flutter_riverpod:    A provider solution for state management in Flutter.
sqflite:             A SQLite plugin for Flutter to manage local storage.
path_provider:       Provides access to commonly used locations on the filesystem.
google_maps_flutter: A Flutter plugin to integrate Google Maps into your app.
image_picker:        A plugin to pick images from the device's library or camera.
intl:                Provides internationalization and localization facilities.

  • flutter_riverpod: A popular state management solution for Flutter.
  • sqflite: Used for local storage with SQLite.
  • path_provider: For finding commonly used locations on the filesystem.
  • google_maps_flutter: For embedding Google Maps in the app.
  • image_picker: To allow image capture from the camera or gallery.
  • intl: For internationalization and localization.

About

A Flutter app to save and manage your favorite places. Features include adding locations, attaching images, viewing them on Google Maps, and persistent local storage using SQLite, with Riverpod for state management.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published