├── Component ├── Component.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ ├── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ └── xcuserdata │ │ │ └── kojiba.xcuserdatad │ │ │ ├── UserInterfaceState.xcuserstate │ │ │ └── xcschemes │ │ │ └── xcschememanagement.plist │ └── xcuserdata │ │ └── kojiba.xcuserdatad │ │ └── xcschemes │ │ ├── Component.xcscheme │ │ └── xcschememanagement.plist ├── Component │ ├── Preview Content │ │ └── Preview Assets.xcassets │ │ │ └── Contents.json │ └── Source │ │ ├── AppDelegate.swift │ │ ├── Architecture │ │ ├── Models │ │ │ ├── PostModel.swift │ │ │ └── TagModel.swift │ │ ├── Network.swift │ │ ├── Updater.swift │ │ └── Views │ │ │ ├── ChooseTagsView.swift │ │ │ ├── CreatePasswordView.swift │ │ │ ├── EditBasicInfoView.swift │ │ │ ├── LoginView.swift │ │ │ ├── PostView.swift │ │ │ ├── PostsView.swift │ │ │ └── TagView.swift │ │ ├── Assets.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── Contents.json │ │ ├── Common │ │ ├── ErrorText.swift │ │ ├── InputField.swift │ │ ├── Mocks.swift │ │ └── View+LoadingView.swift │ │ ├── Info.plist │ │ ├── LaunchScreen.storyboard │ │ └── SceneDelegate.swift └── ComponentTests │ ├── Info.plist │ └── SwiftUIArchitecturesTests.swift ├── LICENSE ├── Protocol ├── Protocol.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ ├── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ └── xcuserdata │ │ │ └── kojiba.xcuserdatad │ │ │ ├── UserInterfaceState.xcuserstate │ │ │ └── xcschemes │ │ │ └── xcschememanagement.plist │ └── xcuserdata │ │ └── kojiba.xcuserdatad │ │ └── xcschemes │ │ ├── Protocol.xcscheme │ │ └── xcschememanagement.plist ├── Protocol │ ├── Preview Content │ │ └── Preview Assets.xcassets │ │ │ └── Contents.json │ └── Source │ │ ├── AppDelegate.swift │ │ ├── Architecture │ │ ├── ApplicationFlowCoordinator.swift │ │ ├── Mock │ │ │ ├── ChooseTagsViewModelMock.swift │ │ │ ├── CreatePasswordViewModelMock.swift │ │ │ ├── EditBasicInfoViewModelMock.swift │ │ │ ├── LoginViewModelMock.swift │ │ │ ├── NetworkMock.swift │ │ │ └── PostsViewModelMock.swift │ │ ├── Models │ │ │ ├── PostModel.swift │ │ │ └── TagModel.swift │ │ ├── Network.swift │ │ ├── NodeView.swift │ │ ├── ViewModels │ │ │ ├── ChooseTagsViewModel.swift │ │ │ ├── CreatePasswordViewModel.swift │ │ │ ├── EditBasicInfoViewModel.swift │ │ │ ├── LoginViewModel.swift │ │ │ └── PostsViewModel.swift │ │ └── Views │ │ │ ├── ChooseTagsView.swift │ │ │ ├── CreatePasswordView.swift │ │ │ ├── EditBasicInfoView.swift │ │ │ ├── LoginView.swift │ │ │ ├── PostView.swift │ │ │ ├── PostsView.swift │ │ │ └── TagView.swift │ │ ├── Assets.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── Contents.json │ │ ├── Common │ │ ├── ErrorText.swift │ │ ├── InputField.swift │ │ ├── Mocks.swift │ │ └── View+LoadingView.swift │ │ ├── Info.plist │ │ ├── LaunchScreen.storyboard │ │ └── SceneDelegate.swift └── ProtocolTests │ ├── Info.plist │ └── ProtocolTests.swift ├── README.md ├── Reactive ├── Reactive.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ ├── xcshareddata │ │ │ └── IDEWorkspaceChecks.plist │ │ └── xcuserdata │ │ │ └── kojiba.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ └── xcuserdata │ │ └── kojiba.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist ├── Reactive │ ├── Base.lproj │ │ └── LaunchScreen.storyboard │ ├── Preview Content │ │ └── Preview Assets.xcassets │ │ │ └── Contents.json │ └── Source │ │ ├── AppDelegate.swift │ │ ├── Architecture │ │ ├── ApplicationFlowCoordinator.swift │ │ ├── Models │ │ │ ├── PostModel.swift │ │ │ └── TagModel.swift │ │ ├── Network.swift │ │ ├── ReactiveNetwork.swift │ │ ├── View+ActiveRoute.swift │ │ ├── ViewModels │ │ │ ├── ChooseTagsViewModel.swift │ │ │ ├── CreatePasswordViewModel.swift │ │ │ ├── EditBasicInfoViewModel.swift │ │ │ ├── LoginViewModel.swift │ │ │ └── PostsViewModel.swift │ │ └── Views │ │ │ ├── ChooseTagsView.swift │ │ │ ├── CreatePasswordView.swift │ │ │ ├── EditBasicInfoView.swift │ │ │ ├── LoginView.swift │ │ │ ├── PostView.swift │ │ │ ├── PostsView.swift │ │ │ └── TagView.swift │ │ ├── Assets.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── Contents.json │ │ ├── Common │ │ ├── ErrorText.swift │ │ ├── InputField.swift │ │ ├── Mocks.swift │ │ └── View+LoadingView.swift │ │ ├── Info.plist │ │ ├── LaunchScreen.storyboard │ │ └── SceneDelegate.swift └── ReactiveTests │ ├── Info.plist │ └── ReactiveTests.swift └── SwiftUI Arch Comparison final.pdf /Component/Component.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /Component/Component.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /Component/Component.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /Component/Component.xcodeproj/project.xcworkspace/xcuserdata/kojiba.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component.xcodeproj/project.xcworkspace/xcuserdata/kojiba.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /Component/Component.xcodeproj/project.xcworkspace/xcuserdata/kojiba.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component.xcodeproj/project.xcworkspace/xcuserdata/kojiba.xcuserdatad/xcschemes/xcschememanagement.plist -------------------------------------------------------------------------------- /Component/Component.xcodeproj/xcuserdata/kojiba.xcuserdatad/xcschemes/Component.xcscheme: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component.xcodeproj/xcuserdata/kojiba.xcuserdatad/xcschemes/Component.xcscheme -------------------------------------------------------------------------------- /Component/Component.xcodeproj/xcuserdata/kojiba.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component.xcodeproj/xcuserdata/kojiba.xcuserdatad/xcschemes/xcschememanagement.plist -------------------------------------------------------------------------------- /Component/Component/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component/Preview Content/Preview Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /Component/Component/Source/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component/Source/AppDelegate.swift -------------------------------------------------------------------------------- /Component/Component/Source/Architecture/Models/PostModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component/Source/Architecture/Models/PostModel.swift -------------------------------------------------------------------------------- /Component/Component/Source/Architecture/Models/TagModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component/Source/Architecture/Models/TagModel.swift -------------------------------------------------------------------------------- /Component/Component/Source/Architecture/Network.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component/Source/Architecture/Network.swift -------------------------------------------------------------------------------- /Component/Component/Source/Architecture/Updater.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component/Source/Architecture/Updater.swift -------------------------------------------------------------------------------- /Component/Component/Source/Architecture/Views/ChooseTagsView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component/Source/Architecture/Views/ChooseTagsView.swift -------------------------------------------------------------------------------- /Component/Component/Source/Architecture/Views/CreatePasswordView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component/Source/Architecture/Views/CreatePasswordView.swift -------------------------------------------------------------------------------- /Component/Component/Source/Architecture/Views/EditBasicInfoView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component/Source/Architecture/Views/EditBasicInfoView.swift -------------------------------------------------------------------------------- /Component/Component/Source/Architecture/Views/LoginView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component/Source/Architecture/Views/LoginView.swift -------------------------------------------------------------------------------- /Component/Component/Source/Architecture/Views/PostView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component/Source/Architecture/Views/PostView.swift -------------------------------------------------------------------------------- /Component/Component/Source/Architecture/Views/PostsView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component/Source/Architecture/Views/PostsView.swift -------------------------------------------------------------------------------- /Component/Component/Source/Architecture/Views/TagView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component/Source/Architecture/Views/TagView.swift -------------------------------------------------------------------------------- /Component/Component/Source/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component/Source/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /Component/Component/Source/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component/Source/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /Component/Component/Source/Common/ErrorText.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component/Source/Common/ErrorText.swift -------------------------------------------------------------------------------- /Component/Component/Source/Common/InputField.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component/Source/Common/InputField.swift -------------------------------------------------------------------------------- /Component/Component/Source/Common/Mocks.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component/Source/Common/Mocks.swift -------------------------------------------------------------------------------- /Component/Component/Source/Common/View+LoadingView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component/Source/Common/View+LoadingView.swift -------------------------------------------------------------------------------- /Component/Component/Source/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component/Source/Info.plist -------------------------------------------------------------------------------- /Component/Component/Source/LaunchScreen.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component/Source/LaunchScreen.storyboard -------------------------------------------------------------------------------- /Component/Component/Source/SceneDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/Component/Source/SceneDelegate.swift -------------------------------------------------------------------------------- /Component/ComponentTests/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/ComponentTests/Info.plist -------------------------------------------------------------------------------- /Component/ComponentTests/SwiftUIArchitecturesTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Component/ComponentTests/SwiftUIArchitecturesTests.swift -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/LICENSE -------------------------------------------------------------------------------- /Protocol/Protocol.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /Protocol/Protocol.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /Protocol/Protocol.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /Protocol/Protocol.xcodeproj/project.xcworkspace/xcuserdata/kojiba.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol.xcodeproj/project.xcworkspace/xcuserdata/kojiba.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /Protocol/Protocol.xcodeproj/project.xcworkspace/xcuserdata/kojiba.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol.xcodeproj/project.xcworkspace/xcuserdata/kojiba.xcuserdatad/xcschemes/xcschememanagement.plist -------------------------------------------------------------------------------- /Protocol/Protocol.xcodeproj/xcuserdata/kojiba.xcuserdatad/xcschemes/Protocol.xcscheme: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol.xcodeproj/xcuserdata/kojiba.xcuserdatad/xcschemes/Protocol.xcscheme -------------------------------------------------------------------------------- /Protocol/Protocol.xcodeproj/xcuserdata/kojiba.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol.xcodeproj/xcuserdata/kojiba.xcuserdatad/xcschemes/xcschememanagement.plist -------------------------------------------------------------------------------- /Protocol/Protocol/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Preview Content/Preview Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /Protocol/Protocol/Source/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/AppDelegate.swift -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Architecture/ApplicationFlowCoordinator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Architecture/ApplicationFlowCoordinator.swift -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Architecture/Mock/ChooseTagsViewModelMock.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Architecture/Mock/ChooseTagsViewModelMock.swift -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Architecture/Mock/CreatePasswordViewModelMock.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Architecture/Mock/CreatePasswordViewModelMock.swift -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Architecture/Mock/EditBasicInfoViewModelMock.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Architecture/Mock/EditBasicInfoViewModelMock.swift -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Architecture/Mock/LoginViewModelMock.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Architecture/Mock/LoginViewModelMock.swift -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Architecture/Mock/NetworkMock.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Architecture/Mock/NetworkMock.swift -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Architecture/Mock/PostsViewModelMock.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Architecture/Mock/PostsViewModelMock.swift -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Architecture/Models/PostModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Architecture/Models/PostModel.swift -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Architecture/Models/TagModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Architecture/Models/TagModel.swift -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Architecture/Network.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Architecture/Network.swift -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Architecture/NodeView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Architecture/NodeView.swift -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Architecture/ViewModels/ChooseTagsViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Architecture/ViewModels/ChooseTagsViewModel.swift -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Architecture/ViewModels/CreatePasswordViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Architecture/ViewModels/CreatePasswordViewModel.swift -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Architecture/ViewModels/EditBasicInfoViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Architecture/ViewModels/EditBasicInfoViewModel.swift -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Architecture/ViewModels/LoginViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Architecture/ViewModels/LoginViewModel.swift -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Architecture/ViewModels/PostsViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Architecture/ViewModels/PostsViewModel.swift -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Architecture/Views/ChooseTagsView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Architecture/Views/ChooseTagsView.swift -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Architecture/Views/CreatePasswordView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Architecture/Views/CreatePasswordView.swift -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Architecture/Views/EditBasicInfoView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Architecture/Views/EditBasicInfoView.swift -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Architecture/Views/LoginView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Architecture/Views/LoginView.swift -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Architecture/Views/PostView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Architecture/Views/PostView.swift -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Architecture/Views/PostsView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Architecture/Views/PostsView.swift -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Architecture/Views/TagView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Architecture/Views/TagView.swift -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Common/ErrorText.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Common/ErrorText.swift -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Common/InputField.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Common/InputField.swift -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Common/Mocks.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Common/Mocks.swift -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Common/View+LoadingView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Common/View+LoadingView.swift -------------------------------------------------------------------------------- /Protocol/Protocol/Source/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/Info.plist -------------------------------------------------------------------------------- /Protocol/Protocol/Source/LaunchScreen.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/LaunchScreen.storyboard -------------------------------------------------------------------------------- /Protocol/Protocol/Source/SceneDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/Protocol/Source/SceneDelegate.swift -------------------------------------------------------------------------------- /Protocol/ProtocolTests/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/ProtocolTests/Info.plist -------------------------------------------------------------------------------- /Protocol/ProtocolTests/ProtocolTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Protocol/ProtocolTests/ProtocolTests.swift -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/README.md -------------------------------------------------------------------------------- /Reactive/Reactive.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /Reactive/Reactive.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /Reactive/Reactive.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /Reactive/Reactive.xcodeproj/project.xcworkspace/xcuserdata/kojiba.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive.xcodeproj/project.xcworkspace/xcuserdata/kojiba.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /Reactive/Reactive.xcodeproj/xcuserdata/kojiba.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive.xcodeproj/xcuserdata/kojiba.xcuserdatad/xcschemes/xcschememanagement.plist -------------------------------------------------------------------------------- /Reactive/Reactive/Base.lproj/LaunchScreen.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Base.lproj/LaunchScreen.storyboard -------------------------------------------------------------------------------- /Reactive/Reactive/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Preview Content/Preview Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /Reactive/Reactive/Source/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Source/AppDelegate.swift -------------------------------------------------------------------------------- /Reactive/Reactive/Source/Architecture/ApplicationFlowCoordinator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Source/Architecture/ApplicationFlowCoordinator.swift -------------------------------------------------------------------------------- /Reactive/Reactive/Source/Architecture/Models/PostModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Source/Architecture/Models/PostModel.swift -------------------------------------------------------------------------------- /Reactive/Reactive/Source/Architecture/Models/TagModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Source/Architecture/Models/TagModel.swift -------------------------------------------------------------------------------- /Reactive/Reactive/Source/Architecture/Network.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Source/Architecture/Network.swift -------------------------------------------------------------------------------- /Reactive/Reactive/Source/Architecture/ReactiveNetwork.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Source/Architecture/ReactiveNetwork.swift -------------------------------------------------------------------------------- /Reactive/Reactive/Source/Architecture/View+ActiveRoute.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Source/Architecture/View+ActiveRoute.swift -------------------------------------------------------------------------------- /Reactive/Reactive/Source/Architecture/ViewModels/ChooseTagsViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Source/Architecture/ViewModels/ChooseTagsViewModel.swift -------------------------------------------------------------------------------- /Reactive/Reactive/Source/Architecture/ViewModels/CreatePasswordViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Source/Architecture/ViewModels/CreatePasswordViewModel.swift -------------------------------------------------------------------------------- /Reactive/Reactive/Source/Architecture/ViewModels/EditBasicInfoViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Source/Architecture/ViewModels/EditBasicInfoViewModel.swift -------------------------------------------------------------------------------- /Reactive/Reactive/Source/Architecture/ViewModels/LoginViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Source/Architecture/ViewModels/LoginViewModel.swift -------------------------------------------------------------------------------- /Reactive/Reactive/Source/Architecture/ViewModels/PostsViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Source/Architecture/ViewModels/PostsViewModel.swift -------------------------------------------------------------------------------- /Reactive/Reactive/Source/Architecture/Views/ChooseTagsView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Source/Architecture/Views/ChooseTagsView.swift -------------------------------------------------------------------------------- /Reactive/Reactive/Source/Architecture/Views/CreatePasswordView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Source/Architecture/Views/CreatePasswordView.swift -------------------------------------------------------------------------------- /Reactive/Reactive/Source/Architecture/Views/EditBasicInfoView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Source/Architecture/Views/EditBasicInfoView.swift -------------------------------------------------------------------------------- /Reactive/Reactive/Source/Architecture/Views/LoginView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Source/Architecture/Views/LoginView.swift -------------------------------------------------------------------------------- /Reactive/Reactive/Source/Architecture/Views/PostView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Source/Architecture/Views/PostView.swift -------------------------------------------------------------------------------- /Reactive/Reactive/Source/Architecture/Views/PostsView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Source/Architecture/Views/PostsView.swift -------------------------------------------------------------------------------- /Reactive/Reactive/Source/Architecture/Views/TagView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Source/Architecture/Views/TagView.swift -------------------------------------------------------------------------------- /Reactive/Reactive/Source/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Source/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /Reactive/Reactive/Source/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Source/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /Reactive/Reactive/Source/Common/ErrorText.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Source/Common/ErrorText.swift -------------------------------------------------------------------------------- /Reactive/Reactive/Source/Common/InputField.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Source/Common/InputField.swift -------------------------------------------------------------------------------- /Reactive/Reactive/Source/Common/Mocks.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Source/Common/Mocks.swift -------------------------------------------------------------------------------- /Reactive/Reactive/Source/Common/View+LoadingView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Source/Common/View+LoadingView.swift -------------------------------------------------------------------------------- /Reactive/Reactive/Source/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Source/Info.plist -------------------------------------------------------------------------------- /Reactive/Reactive/Source/LaunchScreen.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Source/LaunchScreen.storyboard -------------------------------------------------------------------------------- /Reactive/Reactive/Source/SceneDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/Reactive/Source/SceneDelegate.swift -------------------------------------------------------------------------------- /Reactive/ReactiveTests/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/ReactiveTests/Info.plist -------------------------------------------------------------------------------- /Reactive/ReactiveTests/ReactiveTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/Reactive/ReactiveTests/ReactiveTests.swift -------------------------------------------------------------------------------- /SwiftUI Arch Comparison final.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kojiba/SwiftUI-architectures/HEAD/SwiftUI Arch Comparison final.pdf --------------------------------------------------------------------------------