Skip to content

Latest commit

 

History

9 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

📍 MapApp: Interactive Location Explorer (Built with SwiftUI)

A modern, native iOS application built with SwiftUI and MapKit for exploring locations, managing points of interest, and visualizing geographical data efficiently.

Simulator Screenshot - iPhone 16 Pro - 2025-10-13 at 23 01 40 Another MapApp screenshot on iPhone simulator

✨ Features

  • Native Map Integration: Utilizes Apple's MapKit for high-performance, smooth map rendering.
  • Current Location Tracking: Easily center the map on the user's current GPS location.
  • Search Functionality: Integrates with Apple's location services (CLGeocoder/MapKit) to search for addresses and Points of Interest (POIs).
  • Custom Annotations: Ability to place and manage custom pins or markers with detailed pop-over views.
  • Persistent Favorites: Implement a mechanism (e.g., Core Data or UserDefaults) to save and retrieve favorite locations.
  • MVVM Architecture: Clean separation of concerns using the Model-View-ViewModel pattern, leveraging ObservableObjects and EnvironmentObjects for state management.

💻 Technologies Used

Category Technology Description
Language Swift The primary language for iOS development.
Framework SwiftUI The declarative framework used to build the user interface.
Mapping SDK MapKit Apple's framework for embedding maps and handling map-based data.
Architecture MVVM Implemented using ObservableObject and @EnvironmentObject.

🚀 Getting Started

Follow these steps to set up and run the project in Xcode.

Prerequisites

  • Xcode: Latest stable version (e.g., 15+)
  • macOS: A machine capable of running the required Xcode version.
  • iOS SDK: The target iOS version for the application.

Installation

  1. Clone the repository:

    git clone [https://github.com/ctechasiri1/MapApp.git](https://github.com/ctechasiri1/MapApp.git)
    cd MapApp
  2. Open the project: Open the .xcodeproj file in Xcode.

    open MapApp.xcodeproj
  3. Run the application: Select a simulator or a connected device and click the Run button (or use Cmd + R).

💡 Usage

  • Exploring: Pan and zoom the map just like a standard map application.
  • Locate Me: Look for a button (often a crosshair icon) to recenter the map on your simulated or physical current location.
  • Searching: Use the navigation bar or search field to look up new locations, which will then appear as an annotation on the map.

🤝 Contributing

We welcome contributions to this project!

  1. Fork the Project.
  2. Create your Feature Branch (git checkout -b feature/NewFeatureName).
  3. Commit your Changes (git commit -m 'feat: Add a new map feature').
  4. Push to the Branch (git push origin feature/NewFeatureName).
  5. Open a Pull Request detailing your changes.

📄 License

Distributed under the MIT License.


Project Link: https://github.com/ctechasiri1/MapApp

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages