Pinned Repositories
Auction
A sample project to show how to use Realm in a Clean Swift architecture. It also shows how to display different models in only one scene in a DRY manner, another twist to the VIP cycle, and how to use custom table view cells to deal with complex display logic
Authentication
This sample project illustrates how to decouple authentication logic, and write unit tests using different types of test doubles.
CleanStore
A sample iOS app built using the Clean Swift architecture. Clean Swift is Uncle Bob's Clean Architecture applied to iOS and Mac projects. CleanStore demonstrates Clean Swift by implementing the create order use case described by in Uncle Bob's talks.
Containment
This demo project shows how to use view controller containment in the Clean Swift architecture
DataPassing
A sample project to illustrate how the Clean Swift architecture passes data forward and backward more elegantly without using delegation
Gister
This app lists all public gists using GitHub's API. It demonstrates how to encapsulate all API code and write unit tests for it.
Posts
Solving the massive viewDidLoad() problem using the Clean Swift architecture
Simple
A simple login system to demonstrate how the VIP cycle fully encapsulate the `UserDefaults` details from the rest of your app
SmartFetcher
This demo project shows how to use Core Data and NSFetchedResultsController in the Clean Swift architecture
TDD
This is a demo project for the detailed walkthrough of Test Driven Development in my Effective Unit Testing book.
Clean Swift's Repositories
Clean-Swift/CleanStore
A sample iOS app built using the Clean Swift architecture. Clean Swift is Uncle Bob's Clean Architecture applied to iOS and Mac projects. CleanStore demonstrates Clean Swift by implementing the create order use case described by in Uncle Bob's talks.
Clean-Swift/Simple
A simple login system to demonstrate how the VIP cycle fully encapsulate the `UserDefaults` details from the rest of your app
Clean-Swift/Authentication
This sample project illustrates how to decouple authentication logic, and write unit tests using different types of test doubles.
Clean-Swift/Auction
A sample project to show how to use Realm in a Clean Swift architecture. It also shows how to display different models in only one scene in a DRY manner, another twist to the VIP cycle, and how to use custom table view cells to deal with complex display logic
Clean-Swift/TDD
This is a demo project for the detailed walkthrough of Test Driven Development in my Effective Unit Testing book.
Clean-Swift/Gister
This app lists all public gists using GitHub's API. It demonstrates how to encapsulate all API code and write unit tests for it.
Clean-Swift/DataPassing
A sample project to illustrate how the Clean Swift architecture passes data forward and backward more elegantly without using delegation
Clean-Swift/SmartFetcher
This demo project shows how to use Core Data and NSFetchedResultsController in the Clean Swift architecture
Clean-Swift/Posts
Solving the massive viewDidLoad() problem using the Clean Swift architecture
Clean-Swift/Containment
This demo project shows how to use view controller containment in the Clean Swift architecture
Clean-Swift/WhenToMock
Source code for blog post "To mock or not to mock"
Clean-Swift/CurrentAddress
Convert the Apple CurrentAddress sample code to using Clean Swift
Clean-Swift/Asynchronous
This project demonstrates two different approaches to handle asynchronous operations: 1. Completion Handler, and 2. VIP Cycle.
Clean-Swift/Relationship
This demo project shows how to use Core Data relationships in the Clean Swift architecture
Clean-Swift/Synchronous
This project demonstrates five different approaches to handle synchronous operations - when you need the result in the same calling method now, instead of a different delegate method later. The five approaches are: 1. State Variable, 2.Return Value, 3. In-Out Parameter, 4. Completion Handler, and 5. VIP Cycle.
Clean-Swift/ABTesting
A demo project to show how injection technique is used for A/B testing in Clean Swift architecture
Clean-Swift/WhereIsMyApple
This is a demo project to illustrate advanced dependency injection techniques described in this post https://clean-swift.com/advanced-dependency-injection
Clean-Swift/ColorPop
A sample project to show how backward routing and data passing work with popover.
Clean-Swift/Imaging-2
Another sample project to demonstrate how to use UIImagePickerController in Clean Swift
Clean-Swift/Imaging-1
A sample project to demonstrate how to use UIImagePickerController in Clean Swift