Giter Site home page Giter Site logo

igorkulman / iossampleapp Goto Github PK

View Code? Open in Web Editor NEW
820.0 19.0 90.0 74.79 MB

Sample iOS app demonstrating Coordinators, Dependency Injection, MVVM, Binding

License: MIT License

Swift 89.90% Shell 0.17% Ruby 3.54% HTML 6.39%
ios swift carthage mvvm coordinators coordinator-pattern mvvm-architecture rxswift dependency-injection binding

iossampleapp's People

Contributors

cuzv avatar igorkulman avatar imgbotapp avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

iossampleapp's Issues

Restore ViewControllers state

Is it possible to restore ViewController state after terminate app by system?
If I use coordinator pattern app always starts from the beginning.

Releasing child coordinators

Hi Igor,

Thanks for sharing this repo, lots of good stuff! I wasn't sure where to ask you a question regarding the code so I'll add an issue, hope that's okay.

Regarding releasing the child coordinators in the AppCoordinator, is there a reason you don't clean up the other child coordinator when switching view's? eg: childCoordinators[.setup] = nil

And I was wondering, in the FeedCoordinator, you check if it's transitioning from the setup (with !navigationController.viewControllers.isEmpty. Wouldn't it be better to check this in the AppCoordinator to separate out the responsibilities better? The FeedCoordinator does not need to know anything about the setup right?

Oh and I like your child-coordinator enums a lot, will use this for my next project!

Cheers!

Project not building on Xcode 11.4

I am trying build project on Xcode 11.4

the carthage update failing you can see the below.

I also have this warning "Incompatible Swift version - framework was built with 5.1 (swiftlang-1100.0.270.13 clang-1100.0.33.7) and the local version is 5.2 (swiftlang-1103.0.32.1 clang-1103.0.32.29)."

Is there something we can do to fix it?

*** Checking out Nuke at "8.4.2"
*** Checking out Reusable at "4.1.1"
*** Checking out Quick at "v2.2.0"
*** Checking out FeedKit at "9.1.0"
*** xcodebuild output can be found in /var/folders/rx/mby_9bp11g98xr3ds6st2fxw0000gn/T/carthage-xcodebuild.L8y03x.log
*** Downloading Reusable.framework binary at "4.1.1"
*** Downloading RxSwift.framework binary at "Catalyst.1"
*** Skipped installing Reusable.framework binary due to the error:
"Incompatible Swift version - framework was built with 5.1 (swiftlang-1100.0.270.13 clang-1100.0.33.7) and the local version is 5.2 (swiftlang-1103.0.32.1 clang-1103.0.32.29)."

Falling back to building from the source

*** Building scheme "CRToast" in CRToast.xcodeproj
*** Building scheme "FeedKit iOS" in FeedKit.xcodeproj
*** Building scheme "Nimble-iOS" in Nimble.xcodeproj
*** Building scheme "Nuke" in Nuke.xcodeproj
*** Building scheme "Quick-iOS" in Quick.xcworkspace
*** Building scheme "Reusable-iOS" in ReusableDemo.xcworkspace
*** Building scheme "RxNuke" in RxNuke.xcodeproj
*** Building scheme "RxSwiftExt-iOS" in RxSwiftExt.xcworkspace
*** Building scheme "SpecLeaks" in SpecLeaks.xcodeproj
Build Failed
Task failed with exit code 65:
/usr/bin/xcrun xcodebuild -project /Users/mg/iOSProjects/iOSSampleApp/Sources/Carthage/Checkouts/specleaks/SpecLeaks.xcodeproj -scheme SpecLeaks -configuration Release -derivedDataPath /Users/mg/Library/Caches/org.carthage.CarthageKit/DerivedData/11.4_11E146/specleaks/0.1.8 -sdk iphoneos ONLY_ACTIVE_ARCH=NO CODE_SIGNING_REQUIRED=NO CODE_SIGN_IDENTITY= CARTHAGE=YES archive -archivePath /var/folders/rx/mby_9bp11g98xr3ds6st2fxw0000gn/T/specleaks SKIP_INSTALL=YES GCC_INSTRUMENT_PROGRAM_FLOW_ARCS=NO CLANG_ENABLE_CODE_COVERAGE=NO STRIP_INSTALLED_PRODUCT=NO (launched in /Users/mg/iOSProjects/iOSSampleApp/Sources/Carthage/Checkouts/specleaks)

Single responsability

I think that saving the user data, for example the onBoardingData should be responsability of the ViewModel, what do you think?. Nice project btw!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.