ELI5: IGListKit – Constructing Versatile Assortment Views for iOS

This blog post covers a popular open source project called IGListKit, a data-driven UICollectionView framework for creating fast and flexible lists in iOS. We’re exploring this ELI5 style open source project to explain things in simple terms in no time.

If you’d prefer to learn by watching, we also have an accompanying video for IGListKit on our Facebook open source YouTube channel.

Why IGlistKit?

Today, most of the major apps rely heavily on scrollable data feeds for their users. At Facebook, we’ve been involved in large-scale computing for a long time, so building a robust framework for displaying the data was a tremendous help, and we wanted to share it with the world. This work has led us to develop IGListKit as open sourcing software.

IGListKit is an iOS framework for creating fast and flexible data-driven lists or, more technically, UICollectionViews.

One of the goals of IGListKit is to simplify the development process. This framework works by first accessing an array of objects to be displayed in the UICollectionView. Then the IGListKit adapter creates section controllers that handle the creation of individual cells in the list for each object type.

Another great feature of IGListKit is that it keeps your data up to date. This means that this framework is monitoring your objects and if something changes, IGListKit will do batch updates for the UICollectionView. Since these updates are processed automatically, you will never have to deal with this error-prone process again!

Where is it used?

IGListKit was made available as open source by Instagram Engineering at the end of 2016. Since then, the project has garnered over 12,000 stars on GitHub and its community continues to grow.

Where can I find out more?

To learn more about IGListKit, visit their website. It includes several how-to guides, examples, and API documents. For troubleshooting and the latest updates on the project, you can ask a question on the project’s GitHub page.

About the ELI5 series

In a series of short videos (approx. 1 minute long) one of our developer advocates in the Facebook Open Source Team explains a Facebook Open Source project in an easy-to-understand and user-friendly way.

For each of these videos we will write an accompanying blog post (like the one you are reading now), which you can find on our YouTube channel.

Interested in working with open source on Facebook? Check out our open source related job postings on our careers page by taking this short survey.

Comments are closed.