Skip to content

Cross-platform Swift application for iOS/Mac/Android/Windows

License

Notifications You must be signed in to change notification settings

andriydruk/swift-weather-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🇺🇦 #StandWithUkraine

On Feb. 24, 2022 Russia declared an unprovoked war on Ukraine and launched a full-scale invasion. Russia is currently bombing peaceful Ukrainian cities, including schools and hospitals and attacking civilians who are fleeing conflict zones.

Please support Ukraine by lobbying your governments, protesting peacefully, and donating money to support the people of Ukraine. Below are links to trustworthy organizations that are helping to defend Ukraine in this unprovoked war:

Swift Weather App AndroidCore MacCore

Cross-platform Swift application

GitHub Logo

Arhitecture

Architecture based on reusing as much as possible code written on Swift. Currently, Swift Weather Core includes weather repository that handles loading info from the database and fetching new data from providers.

                                    ------------------------------------------
                                  /                        \                   \
  +---------+    +---------------------+    +-----------+   \   +---------+     \   +----------+
  |  macOS  |<-->|  Swift Weather Core |<-->|  Android  |     ->|   iOS   |       ->|  Windows |
  +---------+    +---------------------+    +-----------+       +---------+         +----------+
                 |  Weather repository |
                 +---------------------+
                 |   Weather database  |
                 +---------------------+
                 |   Weather provider  |
                 +---------------------+

How to build [Android]

For building an Android application you need Readdle's Swift Android Toolchain. Please follow the guideline on installation first. After a successful setup, you can clone this repo and build it with Android Studio as any other android project.

How to build [iOS/MacOS]

For building an iOS application you need Xcode 12. Minimal target version of operation systems is iOS 14 and MacOS 11.

How to build [Windows]

In progress...