How to make Weather App in Swift/SwiftUI

Swift Language Weather App

Swift Language Weather is an iOS weather app developed in Swift 4. The app has been actively upgrading to adopt the latest features of iOS and Swift language.

Note : The current version is working with Xcode Version Xcode 9.1 (9B55). If you are using different Xcode version, please check out the previous releases.

Swift Language Weather
Swift Language Weather

Version 4

This version has been upgraded to support iOS 10+ only using Swift 4.


Swift Language Weather

Custom UIView

Weather app in swift

@IBDesignable and @IBInspectable – Reusable UI components

Weather app in swift


Weather app in swift

Size Classes – Support different devices with adaptive layout

Weather app in swiftUI
  • MVVM – Reactively update ViewController UI from ViewModel
  • Protocol-Oriented Programming – We use Protocol-Oriented Programming in IBAnimatable open source project.
  • Value-based programming – Use immutable value anywhere.
  • Icon fonts - Use Weather Icons
  • SwiftyJSON
  • Core Location
  • App indexing like CoreSpotlight and NSUserActivity
  • Unit Tests
  • UI Tests
  • Animations


  1. Clone the repository
$ git clone
  1. Install pods
$ cd SwiftLanguageWeather
$ pod install
  1. Open the workspace in Xcode
$ open "SwiftWeather.xcworkspace"
  1. Sign up on to get an appid
$ mkdir .access_tokens
$ echo "your-openweathermap-appid" > .access_tokens/openweathermap

Please replace “your-openweathermap-appid” with your actual appid key.

  1. Compile and run the app in your simulator
  2. If you don’t see any data, please check “Simulator” -> “Debug” -> “Location” to change the location.


Swift Language Weather

Related Posts

Leave a Reply

Your email address will not be published. Required fields are marked *