UniWeather
UniWeather is a modern, functional weather app built with Swift, inspired by Apple's clean and intuitive design principles. The app provides up-to-date weather information with a focus on simplicity, usability, and elegant visuals.
Features
- π¦οΈ Real-time weather updates for your location
Includes air pollution, wind speed, humidity, and feels-like temperature - πΊοΈ Interactive map with 15 weather characteristic layers
- π Hourly and weekly forecasts
- π€ AI Assistant for personalized weather insights
- π Integration with system calendar (Holiday forecasts)
- π Search and save multiple cities
- β watchOS mini-app for weather on your wrist (Implemented, but not deployed)
- π§© Dynamic widgets that auto-update with the latest info
- β¨ Sleek, Apple-like user interface
- π± Responsive and easy-to-use design
Screenshots
| Main Screen | Map | AI Assistant | Location Searcher |
IMG_8787.MOV |
IMG_8788.MOV |
IMG_8789.MOV |
IMG_8790.MOV |
| Holiday Forecast | Widgets | Widgets |
![]() |
![]() |
![]() |
Getting Started
β οΈ Code in this repo may be far from production quality and is not expected to be easy and welcoming to newcomers.Continue on your own risk! Help & ideas are always welcome!
-
Clone the repository:
git clone https://github.com/Archichil/UniWeather.git
-
Open the project in Xcode.
-
Rename the files named Config_example.plist(
Config_example.plist (Main target)Config_example.plist (Widgets)) toConfig.plist. -
Put your API keys in the
Config.plist. -
IMPORTANT! Choose your account to sign the app and add the app group!
-
Change the app group constant in the code
UserDefaults+Shared.swifthere. -
Build and run on your simulator or device. (Simulator constraints some app functionality)
Requirements
- iOS 17.0+ (Widgets + Intents on iOS 18+)
- Xcode 16+
- Swift 5.10
Contributing
Contributions are welcome! Please open an issue or submit a pull request for any improvements or suggestions.
License
This project is licensed under the Apache License 2.0. See the LICENSE file for details.
Inspired by Apple's design, crafted for everyone.


