Skip to content

NearbyWeather is an open source weather app for iOS, which uses the OpenWeatherMap API. With this project developers are invited to learn advanced iOS concepts, as well as to contribute further advancements. Fork this repo to get started.

License

Notifications You must be signed in to change notification settings

mdnoble-GN/NearbyWeather

 
 

Repository files navigation

NearbyWeather for iOS

NearbyWeather - OpenWeatherMap Client

About the AppMission of this ProjectApp ReleasesHow to Get StartedHow to ContributeSupport & FeedbackLicensing


Platform: iOS Swift Contributors License: MIT

Download on the App Store

NearbyWeather Screenshots

About the App

ℹ️ By using the app you automatically agree to the privacy policy and the terms of use.

NearbyWeather is a simple weather app, that provides current weather information for nearby cities, as well for bookmarked locations. NearbyWeather uses the OpenWeatherMap API to download weather data. Additionally the OpenWeatherMaps location database is directly bootstrapped into the app for quick access.

With NearbyWeather you can:

  • See current weather information for bookmarked and nearby places via a list and a map view
  • See the current temperature on your app icon
  • Detailed weather information is offered in addition to the overviews
  • Add places as bookmarks via OpenWeatherMaps weather-station data base
  • Choose your preferred units (celsius/fahrenheit/kelvin & kilometres/miles)
  • Access previously loaded data offline
❗️Please note that you need to supply your own OpenWeatherMap API key, in order to use the app.

Mission of this Project

NearbyWeather was created to help you as a reference for developing your skills. The app is kept up to date with the latest best practices in mobile app development. Find out how how modern iOS apps are engineered:

Area Concepts Status
Language Swift (latest release)
Additional Languages Objective-C, JavaScript
Additional Frameworks RxSwift 🔄 In Progress
Architecture MVVM+C 🔄 In Progress
Navigation Coordinator Pattern with RxFlow
UI-Construction Autolayout in Code + Factory Pattern 🔄 In Progress
Dependencies Dependency Injection with Swinject & Singletons 🔄 In Progress / ✅
Data Persistence Realm & Files on Disk 🔄 In Progress / ✅
Networking Alamofire
Asset Management R.Swift
Code Quality SwiftLint
Analytics and Reporting Google Firebase
Library Management CocoaPods
Bootsrapped Bundle Data Node.js Scripts
Deployment Fastlane
Testing and Quality Assurance Unit Tests and UI Tests, SwiftUI Scene Previews 🅾️ Coming Soon

App Releases

Past releases are documented in the release section of this repository. Future releases are planned via the project board.

Version Tag
Current Release v2.2.1
Next Release v2.2.0
Future Releases v?.?.?

How to Get Started

  1. Install the latest version of Xcode from the Mac AppStore
  2. Install the latest Xcode command line tools
    xcode-select --install
    
  3. Install CocoaPods to your machine
  4. Install fastlane to your machine
  5. Install SwiftLint to your machine
  6. Fork the project and clone it to your local machine
  7. Configure signing via fastlane match to use your personal certificates
  8. Run pod install to be able to build locally

How to Contribute

Development

We looking forward to receiving your contributions. You can find out how to take part in the development of this application. Please find out how to submit code to this repository via the contribution guidelines.

Beta Testing

You may also assist as a beta tester. Periodically test-builds will become available via Testflight. In order to take part in testing those submit an email address used as an Apple-ID to erikmartens.dev@icloud.com to be added to the list of testers.

Support & Feedback

If you are having technical issues or want to raise a bug/issue with the app, the preferred way is through GitHub issues. In order to contact Erik Maximilian Martens for any other request please reach out via one of the channels detailed in table below:

Platform Link
Discord Discord: NearbyWeather by Erik Martens
Twitter Twitter: @erik_m_martens
Email

Licensing

Copyright © 2016 - 2021 Erik Maximilian Martens.

Licensed under the MIT License (the "License"); you may not use this file except in compliance with the License.

You may obtain a copy of the License at https://opensource.org/licenses/MIT.

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the LICENSE for the specific language governing permissions and limitations under the License.

About

NearbyWeather is an open source weather app for iOS, which uses the OpenWeatherMap API. With this project developers are invited to learn advanced iOS concepts, as well as to contribute further advancements. Fork this repo to get started.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Swift 95.3%
  • Ruby 3.0%
  • JavaScript 1.2%
  • Other 0.5%