Skip to content

A SwiftUI app providing real-time weather information and tourist places of interest for various locations.

Notifications You must be signed in to change notification settings

AkshayanMohandas/Tourist-Utility-App

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Tourist Utility App 🌤️🗺️

A SwiftUI-based iOS application that provides real-time weather updates, forecasts, and maps of tourist attractions. This project was developed as part of my BEng Software Engineering coursework at the University of Westminster, where I achieved a grade of 86/100.


Features ✨

  • Real-Time Weather Data

    • Displays the current weather, including temperature, humidity, pressure, and wind speed for any city.
    • Fetches weather data from the OpenWeatherMap API.
  • Hourly and Daily Forecasts

    • Provides an hourly forecast for the next 48 hours in a horizontally scrollable view.
    • Shows a daily forecast for the next 8 days in a vertically scrollable list.
  • Tourist Attractions Map

    • Interactive map with pins marking key tourist attractions, loaded dynamically from a local JSON file.
    • Users can tap on pins to view additional details about each place.
  • Dynamic City Search

    • Allows users to search for a specific city, dynamically updating weather, forecasts, and the map view for the selected location.
  • User-Friendly Interface

    • Designed to follow Apple's Human Interface Guidelines, ensuring a clean and consistent UI/UX.

Technologies Used 🛠️

  • Swift 5.7+
  • SwiftUI
  • CoreLocation
  • MapKit
  • OpenWeatherMap API

Project Structure 📂

  • Models: Defines the data structures for weather and tourist places.
  • ViewModels: Manages state and data flow between views and models using the MVVM pattern.
  • Views: SwiftUI views for displaying weather information, forecasts, and maps.

Skills Gained 🧠

  • Native iOS Development with SwiftUI.
  • API integration and JSON decoding.
  • State management with the MVVM architecture.
  • Multi-threading for smooth user experiences.
  • UI/UX design aligned with Apple guidelines.

About

A SwiftUI app providing real-time weather information and tourist places of interest for various locations.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages