swift-composable-architecture
swift-composable-navigator
Our great sponsors
swift-composable-architecture | swift-composable-navigator | |
---|---|---|
59 | 4 | |
11,153 | 570 | |
2.5% | 0.0% | |
9.6 | 0.0 | |
3 days ago | about 2 years ago | |
Swift | Swift | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
swift-composable-architecture
-
Kaleidoscope of iOS app architectures
TCA for short. Very scalable, quite promising, quite popular. A decent alternative for MVVM enhanced by the Clean Architecture. You can learn more about it in a Point-Free tutorial and on GitHub.
-
My largest project yet: A fully themable, powerful task manager and daily planner built with SwiftUI. Available on iPhone and iPad for free (no ads, IAP or data collected).
🙏 Built with SwiftUI and The Composable Architecture (TCA): This isn’t a feature, but I just want to express my gratitude to the creators and maintainers of these two frameworks, which have played a huge part in making me fall in love with iOS development.
-
Koji je vas odnos prema alternativnim hype-ovanim paradimama programiranja, frameworcima i tehnologijama?
Razliciti alternativni frameworci i arhitekture - Recimo, na pamet mi padaju Composable Architecture (https://github.com/pointfreeco/swift-composable-architecture) i RIBs arhitektura (https://github.com/uber/RIBs). Ok, ove arhitekture resavaju neke probleme. Ali da li problemi koje te arhitekture resavaju solidan developer ne moze sam da resi bez vendor locka za kreatore tih arhitektura. Jesu one open-source, ali meni je rizik da se vezujem za bilo sta sto sutra moze da prestane da se odrzava.
- SwiftUI Structure and Architecture
-
What design patterns exist and which should I learn for SwiftUI?
I came across this post discussing MVM, MVVM, MVP, and composable architecture.
-
What is a piece of code (or Framework, extension, etc.) that you add in every new project?
At a minimum, Composable Architecture, and now Dependencies from Point-Free.
-
Ideal architecture for an app entirely in SwiftUI? Example code repo would be great
I’ve built a couple of apps with this framework: https://github.com/pointfreeco/swift-composable-architecture
- Use of EnvironmentObjects for sharing ObservableObjects
-
Best way forward coming from the Javascript / Typescript world?
While there are apps that use a Redux-style architecture, the arch is still in its infancy in the community. There are a number of implementations each with their own take on Redux. TCA is probably the one with the most name recognition and documentation.
-
Should You Still Learn UIKit?
Learn it if the project at hand requires it. A lot of older, more mature apps will still use UIKit, so it’s likely if you plan to work an iOS developer job that you will need it. But it’s getting to the point where a lot of the forward thinking shops are already starting to integrate SwiftUI. (Me being one of them) which, btw, a lot of people will say SwiftUI isn’t quite there yet, and I mostly disagree. SwiftUI is good for a great many use cases. Yes, there are still pain points, but you can write most of the apps you’d need to write in SwiftUI. And there are great architectural frameworks out there that actually give SwiftUI an opinionated way to structure apps that is testable and maintainable. Check out pointfreeco’s The Composable Architecture (https://github.com/pointfreeco/swift-composable-architecture)
swift-composable-navigator
-
Helm: A graph-based SwiftUI router
Great to have more options for SwiftUI navigation - have been using Composable Navigator, but looks like that’s now potentially end-of-life.
-
Any advice to go for SwiftUI on a new production project?
I'd recommend Composable Navigator for navigation & deep linking, as well as Introspect for the times when you need to make minor changes to the UIKit components that back some SwiftUI components (without needing to fully wrap UIKit for SwiftUI).
- Based on the experience we gathered on programmatic navigation in SwiftUI, we decided to build an open source library that enables rich deeplinking and navigation along navigation paths. Welcome ComposableNavigator!
- ComposableNavigator is finally public! Based on the experience we gathered on programmatic navigation in SwiftUI, we decided to build an open source library that enables rich deeplinking and navigation along navigation paths.
What are some alternatives?
Clean Architecture for SwiftUI + Combine - SwiftUI sample app using Clean Architecture. Examples of working with CoreData persistence, networking, dependency injection, unit testing, and more.
tca-swiftui-navigation-demo - Demo project that shows how to implement navigation in SwiftUI iOS application using Swift Composable Architecture
redux - A JS library for predictable global state management
UIPilot - The missing typesafe SwiftUI navigation library
Crossroad - :oncoming_bus: Route URL schemes easily
iOS-Viper-Architecture - This repository contains a detailed sample app that implements VIPER architecture in iOS using libraries and frameworks like Alamofire, AlamofireImage, PKHUD, CoreData etc.
RxFlow - RxFlow is a navigation framework for iOS applications based on a Reactive Flow Coordinator pattern
GRDB.swift - A toolkit for SQLite databases, with a focus on application development
ScreenUI - A multi-platform, multi-paradigm routing framework.
TCA-tutorial
RouteComposer - Protocol oriented, Cocoa UI abstractions based library that helps to handle view controllers composition, navigation and deep linking tasks in the iOS application. Can be used as the universal replacement for the Coordinator pattern.