Awesome Open Source
Awesome Open Source


Twitter CI status Swift Package Manager Compatible Github Current Release Platforms Xcode 12.5+ iOS 11.0+ Swift 5.4+ Github Repo Size Github Code Size Github Closed PR's License codebeat badge Donate

Tired of implementing the data sources over and over again? Want to use a lightweight solution that does not mess up your view controllers? Then this is for you! The generic data source implementation for all your view controllers, that supports UITableView, UICollectionView and NSFetchedResultsController.


Swift Package Manager

In Xcode open your target list and select your project. Click the tab Swift Packages and there the small + icon. Enter the URL of this repository, select the version you want to install - usually the preset is okay - and confirm.


Simply add the following line to your Podfile:

pod "Source"



The repo includes an example project. To run it, just type pod try Source in your console and it will be downloaded and opened for you.


  • If you found a bug, please open an issue.
  • If you have a feature request, please open an issue.
  • If you want to contribute, please submit a pull request.


Stefan Herold • 🐦 @Blackjacxxx


Source is available under the MIT license. See the LICENSE file for more info.

Alternatives To Source
Select To Compare

Alternative Project Comparisons
Related Awesome Lists
Top Programming Languages
Top Projects

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Swift (64,741
Xcode (12,432
Apple (8,345
Uitableview (1,337
Swift Package (476
Uicollectionview (267
Carthage Support (12