LifecycleKit is a framework for building lifecycle-aware architecture components.
Lifecycle provides protocols and implementations that can be used to facilitate building safe and scalable application architecture.
SPIR is an app architecture utilizing Lifecycle to create a scoped business logic tree independent of the view hierarchy. Complemented by Needle, a compile-time safe Swift dependency injection framework.
- iOS 13.0+ / macOS 10.15+ / tvOS 13.0+ / watchOS 6.0+
Swift Package Manager
dependencies: [ .package(url: "https://github.com/ashare80/LifecycleKit.git", .upToNextMajor(from: "0.2.0")) ]
Copyright (C) 2020 Adam Share Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 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.
You may find interesting
Replay subject and share(replay:) - 2020-10-23 16:11:19
Lazy viewable - 2020-10-19 14:22:21
MVVM architecture - 2020-10-16 19:18:37
Presenter ContentView - 2020-10-05 22:09:40
Rename lifecycle objects. - 2020-09-29 22:44:38
Make lifecycle state getter private. - 2020-09-29 14:34:24
Autocancel retain as subscriber and cancel instead of complete. - 2020-09-29 12:49:44
Leak detector descriptions and thread safety - 2020-09-28 19:58:54
Cached builders. Remove prints. - 2020-09-23 22:18:29
Child attach boolean. - 2020-09-22 10:48:27
Correct lifecycle assertion. - 2020-09-21 23:42:55
CombineExtensions refactor with schedulers. Fix bindable method calls. - 2020-09-21 20:02:14
Weak scope in router and convenience init casting. - 2020-09-20 14:28:46
Fix conformance and make public root methods. - 2020-09-17 22:12:06
SPIR initial - 2020-09-17 19:18:12
Experimental version of new app architecture.