Skip to content

Latest commit

 

History

6 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

Map Appdrawing

Overview

iOS application that allows users to create, save, and view map entries on an interactive map. Users can add entries by providing a title, description, and selecting a location on the map. The saved entries are displayed as annotations, making it easy to revisit and explore previously saved places.

Features

  • User Authentication: Secure login and signup using Firebase Authentication.
  • Entry Creation: Users can add entries with a title, description, and a location on the map.
  • Map Integration: Interactive map with annotations representing saved entries using MapKit.
  • Photo Support: Users can attach images to their entries using PhotosUI.
  • Cloud Storage: Entries and images are stored securely using Firebase Firestore and Firebase Storage.
  • Smooth Navigation: SwiftfulRouting ensures a seamless user experience with intuitive navigation.

Technologies Used

  • SwiftUI - Modern declarative UI framework for building the app.
  • MapKit - For integrating maps and displaying annotations.
  • PhotosUI - For selecting and handling images.
  • FirebaseAuth - User authentication and management.
  • FirebaseStorage - Storing images in the cloud.
  • FirebaseFirestore - Storing and managing journal entries.
  • SwiftfulRouting - Simplified navigation within SwiftUI.
  • Swift Package Manager (SPM) - Managing dependencies.

Installation

  1. Clone the repository:
    git clone <repository_url>
    cd MapApp
  2. Open the project in Xcode.
  3. Ensure all dependencies are installed via Swift Package Manager.
  4. Set up Firebase:
    • Create a Firebase project.
    • Add an iOS app and download the GoogleService-Info.plist file.
    • Place GoogleService-Info.plist in the Xcode project under the correct target.
    • Enable Firestore, Firebase Authentication, and Firebase Storage in the Firebase console.
  5. Build and run the app on a simulator or physical device.

Usage

  1. Sign Up / Log In - Users must authenticate to access the app.
  2. Create an Entry - Tap the "New" button, select a location on the map then enter a title, image and description.
  3. Attach an Image - Select an image using the built-in PhotosUI picker -it's not optinal you should at least 1 photo-.
  4. View Saved Entries - Entries appear on the map as custom annotations.
  5. Tap on an Annotation - View details sheet will appear as a sheet of saved entries.

Future Improvements

  • Offline support for saving entries locally.
  • Enhanced search and filtering for saved locations.
  • Sharing feature to allow users to share entries with friends.
  • Custom hashtags for entries for a more personalized experience.

Demo

simulator-screen-recording-iphone-15-pro-2025-01-31-at-023727_thYQYuxQ.1.mov

About

Create, save and view entries on an interactive map. Application developed by using SwiftUI - Firebase.

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages