Latest 1.0.4
License MIT
Platforms ios 5.0, requires ARC
Dependencies JVRCellConfiguratorDelegate
Frameworks CoreData


JVRCoreDataCollectionViewDataSource aims to make your collection view controllers lighter by encapsulating logic from NSFetchedResultsControllerDelegate and UICollectionViewDataSource.


Using JVRCoreDataCollectionViewDataSource is really simple, you only need a few lines in your view collection controller class.

@interface MyViewController()
@property (nonatomic, strong) JVRCoreDataCollectionViewDataSource *dataSource;

@implementation MyViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    self.dataSource = [JVRCoreDataCollectionViewDataSource dataSourceForCollectionView:self.collectionView 
                                                                  withCellConfigurator:[[MyCellConfigurator alloc] init]];


As you might have noticed, you will also need a cell configurator class (MyCellConfigurator in this example), which has to implement the methods of the JVRCellConfiguratorDelegate protocol. See the project page for details about how to do this.


CocoaPods is a great way to add third party libraries to your project so I recommend using it for JVRCoreDataCollectionViewDataSource as well. Add the following line to your Podfile:

  pod 'JVRCoreDataCollectionViewDataSource'

This will also add the previously mentioned JVRCellConfiguratorDelegate as dependency.

Latest podspec

    "name": "JVRCoreDataCollectionViewDataSource",
    "version": "1.0.4",
    "summary": "A reusable class that combines UICollectionViewDataSource and NSFetchedResultsControllerDelegate.",
    "homepage": "",
    "license": "MIT",
    "authors": {
        "Ju00f3zsef Vesza": "[email protected]"
    "social_media_url": "",
    "platforms": {
        "ios": "5.0"
    "source": {
        "git": "",
        "tag": "1.0.4"
    "source_files": "*.{h,m}",
    "public_header_files": "*.h",
    "frameworks": "CoreData",
    "requires_arc": true,
    "dependencies": {
        "JVRCellConfiguratorDelegate": []

Pin It on Pinterest

Share This