Need help with SwiftLanguageWeather?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

5.2K Stars 1.2K Forks MIT License 245 Commits 8 Opened issues


Swift Language Weather is an iOS weather app developed in Swift 4.

Services available


Need anything else?

Contributors list

Swift Language Weather

BuddyBuild Language License

SwiftWeather has renamed to Swift Language Weather. Because this repo is ranked number one in Google when we search "Swift Weather", I got an email from Swift Weather Company's lawyer to ask me to change the name because they said they are the owner of U.S. Trademark SWIFT WEATHER. After discussed with them, they were not happy with the name SwiftyWeather. Now the new project name is Swift Language Weather. More details can be found on Issue: Open source project using a registered trademark.

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.


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.

Version 4

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

There is three major version of the app released before.

  • V1.0 - Support iOS 7+ using CocoaPods and AFNetworking. and Release V1 - Using CocoaPods and AFNetworking
  • V2.0 - Support iOS 8+ using Carthage, Alamofire, and SwiftyJSON. and Release V2.0
  • V2.1 - Support iOS 8+ using Alamofire and SwiftyJSON. This version has removed Carthage because some developers don't have a paid Apple iOS developer account, and they have issues to build Carthage packages.
  • V3.0 - Support iOS 9+ and Swift 3.



Sketch design

  • Custom UIView

Custom UIView

  • @IBDesignable
    - Reusable UI components

IBDesignable and IBInspectable

  • UIStackView


  • Size Classes - Support different devices with adaptive layout

Size Classes

  • MVVM - Reactively update
    UI from
  • 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
  • Unit Tests
  • UI Tests
  • Animations

How to build

1) Clone the repository

$ git clone

2) Install pods

$ cd SwiftLanguageWeather
$ pod install

3) Open the workspace in Xcode

$ open "SwiftWeather.xcworkspace"

4) 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.

5) Compile and run the app in your simulator

6) If you don't see any data, please check "Simulator" -> "Debug" -> "Location" to change the location.


  • Xcode 9
  • iOS 10+
  • Swift 4

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.