Skip to content

Repository files navigation

Build StatusCarthage Compatiblecodecov

Sourcing

Typesafe and flexible abstraction for TableView & CollectionView DataSources written in Swift. It helps you to seperate concerns and keep ViewControllers light. By operating on data providers replacing your view implementation is easy at any time.

Documentation

Read the docs. Generated with jazzy. Hosted by GitHub Pages.

Quick Demo

Setting up your Cell by implementing ConfigurableCell & ReuseIdentifierProviding.

import Sourcing
classLabelCell:UITableViewCell,ConfigurableCell{func configure(with label:String){
textLabel?.text = label
}}
//If the reuse identifier is the same as the class name.
extensionLabelCell:ReuseIdentifierProviding{}letlabelCellConfiguration=CellConfiguration<LabelCell>()letlabelsToDispay=ArrayDataProvider(sections:[["Row 1","Row 2"],["Row 1","Row 2"]])letdataSource=TableViewDataSource(dataProvider: labelsToDispay, cellConfiguration: labelCellConfiguration)
tableView.dataSource = dataSource
//Add this to sync data changes to the table view.
letchangeAnimator=TableViewChangeAnimator(tableView: tableView, dataProvider: labelsToDispay)

Installation

Swift Package Manager

SPM is integrated with the Swift build system to automate the process of downloading, compiling, and linking dependencies.

Specify the following in your Package.swift:

.package(url:"https://github.com/lightsprint09/Sourcing", from:"4.1.0"),

Contributing

See CONTRIBUTING for details.

Contact

Lukas Schmidt (Mail, @lightsprint09)

License

Sourcing is released under the MIT license. See LICENSE for details.

About

Abstracts TableView & CollectionView DataSources

Topics

Resources

Contributing

Stars

17 stars

Watchers

4 watching

Forks

Releases

Packages

Contributors

Languages