This repo contains the entire WeatherRules iOS app, that was available on the iOS App Store until Apple shutdown the Dark Sky API and replaced it with WeatherKit.
This repo is meant as a portfolio piece and an example of my code, you won't be able to just build and run it as it's missing API Keys among other things.
The app is split into a number of frameworks/targets
WhatToWear
: Main App TargetRulesExtension
: Rules Today ExtensionForecastExtension
: Forecast Today ExtensionExtensionCore
: Code that is shared between the Today ExtensionsCoreUI
: Reuseable UI componentsAssets
: Images used throughout the appCharts
: Components used for making charts/graphsNetworking
: Networking components for making API calls primarilyCoreComponents
: Common objects used in multiple places that don't fit elsewhereModels
: Model objects, whether they be from the DarkSky API or elsewhereCommonModels
: Shared Models between this app and an in progress Swift Backend component, repo is hereCore
: Mostly Extensions of Apple frameworks that are used everywhereCommonCore
: Shared Extensions of Apple frameworks between this app and an in progress Swift Backend component, repo is hereErrorRecorder
: Wrapper for sending non-fatal errors to AppCenter (as custom events) as well as AnalyticsEnvironment
: Splitting Dev/Prod environments
There is a small-ish test suite of ~300 tests using the Quick and Nimble BDD frameworks.
Tests in other repos
All images (except App Icons and Launch images) are in the Assets
framework and I use R.swift for compile-time checking of them.
I use SwiftLint to lint this project, the config file can be found here.
If you really want to build and run it you'll need to sort out:
- DarkSky API Keys
- AppCenter API Keys
- Code-signing settings