awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
chiahsien avatar

chiahsien/CHTCollectionViewWaterfallLayout

0
View on GitHub↗
4,613 stars·691 forks·Objective-C·MIT·9 views

CHTCollectionViewWaterfallLayout

CHTCollectionViewWaterfallLayout is a custom layout for iOS collection views designed to organize items of varying heights into a masonry-style grid. It enables the display of dynamic content in multiple columns to optimize screen space and visual flow.

The layout allows for specific configuration of column counts and item population directions, including left-to-right, right-to-left, and shortest-column-first rendering patterns. This approach minimizes vertical gaps by placing items into the column with the lowest current height.

The system also manages section-level accessories, integrating headers and footers with custom heights and spacing. It supports unique column configurations and spacing rules mapped to different sections of the layout.

Features

  • Masonry Grid Management - Implements a masonry-style grid that arranges elements of unequal heights without forcing row alignment.
  • Staggered Grid Column Height Trackers - Uses a shortest-column-first heuristic to place the next item in the column with the lowest current height.
  • iOS UI Layouts - Provides structured content layouts with specific column counts and directional ordering for iOS apps.
  • UICollectionView Layouts - Offers a custom layout engine for managing the positioning of grids and lists in iOS UICollectionView.
  • Dynamic Grid Content Display - Organizes items of different sizes into columns to optimize screen space and visual flow.
  • Waterfall Layouts - Generates waterfall layouts that accommodate elements of varying heights in a fluid flow.
  • Masonry Layouts - Creates a grid of items with varying heights that fit together without large vertical gaps.
  • Coordinate Calculations - Computes precise X and Y coordinates for items based on variable heights and column counts.
  • Item Population Directions - Provides options to populate grid items using left-to-right, right-to-left, or shortest-column-first patterns.
  • Section Configuration Mapping - Stores unique column configurations and spacing rules for different sections using a mapping data structure.
  • Render Direction Controls - Provides options to order item population using left-to-right, right-to-left, or shortest-column-first patterns.
  • Staggered Grid Column Counts - Allows defining and adjusting the number of columns at runtime for masonry layouts.
  • UI Components - Pinterest-style waterfall layout for collection views.

Star history

Star history chart for chiahsien/chtcollectionviewwaterfalllayoutStar history chart for chiahsien/chtcollectionviewwaterfalllayout

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does chiahsien/chtcollectionviewwaterfalllayout do?

CHTCollectionViewWaterfallLayout is a custom layout for iOS collection views designed to organize items of varying heights into a masonry-style grid. It enables the display of dynamic content in multiple columns to optimize screen space and visual flow.

What are the main features of chiahsien/chtcollectionviewwaterfalllayout?

The main features of chiahsien/chtcollectionviewwaterfalllayout are: Masonry Grid Management, Staggered Grid Column Height Trackers, iOS UI Layouts, UICollectionView Layouts, Dynamic Grid Content Display, Waterfall Layouts, Masonry Layouts, Coordinate Calculations.

Which projects share features with chiahsien/chtcollectionviewwaterfalllayout?

Projects with overlapping indexed features include: etsy/androidstaggeredgrid — The AndroidStaggeredGrid library provides a multi-column, masonry-style grid component for Android applications. It… callmecavs/bricks.js — bricks.js is a masonry layout engine and responsive grid layout tool used for arranging fixed-width elements into a… soysaucelab/collectionkit — CollectionKit is a framework for building high-performance scrollable grids and lists on Apple platforms. It provides… metafizzy/isotope — Isotope is a JavaScript grid layout library used to create filterable and sortable grids with automatic element… metafizzy/packery — Packery is a JavaScript bin-packing grid layout engine and DOM element positioning library. It arranges elements of… kelvinjin/animatedcollectionviewlayout — AnimatedCollectionViewLayout is a layout engine and animation framework for UIKit collection views. It provides a…

Projects sharing features with CHTCollectionViewWaterfallLayout

These projects share indexed features with CHTCollectionViewWaterfallLayout. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • etsy/androidstaggeredgridetsy avatar

    etsy/AndroidStaggeredGrid

    4,771View on GitHub↗

    The AndroidStaggeredGrid library provides a multi-column, masonry-style grid component for Android applications. It arranges items in a staggered layout where rows contain items of varying heights, similar to a Pinterest-style grid. The library supports dynamic column count configuration and includes built-in item interaction handling through tap event callbacks. Key capabilities include adjustable column counts that can be changed at runtime, separate column configurations for portrait and landscape orientations, automatic scroll position restoration across configuration changes, and an empt

    Javanon-sox
    View on GitHub↗4,771
  • callmecavs/bricks.jscallmecavs avatar

    callmecavs/bricks.js

    4,651View on GitHub↗

    bricks.js is a masonry layout engine and responsive grid layout tool used for arranging fixed-width elements into a packed grid system. It functions as a dynamic element packer that calculates the absolute positions of items based on specific size parameters. The library distinguishes itself through incremental layout integration, utilizing a system that identifies and merges newly added elements into an existing layout without recalculating every item on the page. It also includes a mechanism for tracking browser window dimensions to trigger layout repacks when screen sizes match predefined

    JavaScriptmasonry
    View on GitHub↗4,651
  • soysaucelab/collectionkitSoySauceLab avatar

    SoySauceLab/CollectionKit

    4,510View on GitHub↗

    CollectionKit is a framework for building high-performance scrollable grids and lists on Apple platforms. It provides engines for declarative state synchronization, dynamic grid rendering, and multi-section data composition within collection views. The framework features a declarative synchronizer that calculates data differences to update interface elements without reloading the entire view. It includes a dynamic grid layout engine for rendering data in flow or waterfall patterns, and a data composer that combines different data sources into a single view with independent section providers.

    Swiftcollectionkitiosswift
    View on GitHub↗4,510
  • metafizzy/isotopeM

    metafizzy/isotope

    11,102View on GitHub↗

    Isotope is a JavaScript grid layout library used to create filterable and sortable grids with automatic element positioning in the browser. It functions as a layout engine that calculates absolute coordinates for elements to maintain a dense grid regardless of individual item dimensions. The library features a masonry layout engine that arranges items of varying heights into a compact grid to eliminate vertical gaps. It includes a coordinate-based layout animator for smooth transitions during layout shifts and a CSS selector filtering tool to show or hide elements without reloading the page.

    HTML
    View on GitHub↗11,102
  • Compare all 30 related projects→