Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rockenzo/myweather
MyWeather is a SwiftUI-based weather app that provides real-time weather information based on the user’s location. It features smooth launching animations, advanced loading effects, and displays key weather details like temperature, wind speed, and humidity. Built with iOS 16+ and Swift 5.5+.
https://github.com/rockenzo/myweather
ios-app restful-api swift swiftui weather-api web-api
Last synced: 3 months ago
JSON representation
MyWeather is a SwiftUI-based weather app that provides real-time weather information based on the user’s location. It features smooth launching animations, advanced loading effects, and displays key weather details like temperature, wind speed, and humidity. Built with iOS 16+ and Swift 5.5+.
- Host: GitHub
- URL: https://github.com/rockenzo/myweather
- Owner: RockENZO
- Created: 2024-09-15T13:29:02.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2024-09-23T05:07:55.000Z (3 months ago)
- Last Synced: 2024-09-29T11:25:38.468Z (3 months ago)
- Topics: ios-app, restful-api, swift, swiftui, weather-api, web-api
- Language: Swift
- Homepage: https://openweathermap.org
- Size: 12.8 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# MyWeather
MyWeather is a SwiftUI-based weather application that provides current weather information based on the user's location. The app features a launching animation and a loading view with advanced animations.
## Demo
![MyWeather App Demo](SimulatorScreenRecording.gif)## Requirements
- iOS 16.0+
- Xcode 13.0+
- Swift 5.5+## Installation
1. Clone the repository
2. Open the project in Xcode
3. Build and run the project on your simulator or device.## Usage
1. On launch, the app displays a launching animation.
2. After the animation, the app requests location permissions.
3. Once the location is obtained, the app fetches the current weather data.
4. The main screen displays the temperature, wind speed, and humidity.## Code Overview
### LaunchView
`LaunchView` displays the launching animation and transitions to `ContentView` after the animation.
### ContentView
`ContentView` manages the display of the `LaunchView` and the main weather content.### WeatherRow
`WeatherRow` displays individual weather information such as temperature, wind speed, and humidity.### LocationManager
`LocationManager` handles location services and provides the user's current location.### WeatherManager
`WeatherManager` fetches weather data from the OpenWeatherMap API based on the user's location.### LineGraph
`LineGraph` displays the hourly forecast using a line graph.### License
This project is licensed under the MIT License. See the LICENSE file for details.### Acknowledgements
[OpenWeatherMap API](https://openweathermap.org/api) for providing weather data.
[SwiftUI](https://developer.apple.com/xcode/swiftui/) for the UI framework.