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
alibaba avatar

alibaba/vlayoutArchived

0
View on GitHub↗
10,740 stars·1,784 forks·Java·MIT·18 viewstangram.pingguohe.net↗

Vlayout

vlayout is an Android RecyclerView extension framework that uses pluggable layout helpers to mix grid, list, sticky, staggered, and fixed layouts within a single scrollable view. It provides a modular layout delegation system where each section of the RecyclerView is assigned a dedicated layout helper that manages its own measurement, placement, and decoration, enabling complex heterogeneous content displays.

The framework extends RecyclerView's LayoutManager to delegate layout logic to these modular helper components, supporting features like sticky headers that remain visible at the top during scrolling, staggered grid patterns with variable item heights, and fixed view positioning that pins a child at a specific screen coordinate. It also includes a virtual adapter bridge that routes adapter data through a position mapping layer, translating global positions into section-local indices for efficient view binding.

vlayout allows merging multiple data adapters into one scrollable RecyclerView, each with its own layout behavior and data set, and supports nested layout composition for complex arrangements like grids inside lists. The library provides a registry of layout helpers and enables developers to define custom section layouts with specific positioning logic.

Features

  • Modular Layout Managers - Provides modular layout helpers to arrange child views in grid, list, sticky, and fixed patterns within RecyclerView.
  • Adapter Merging - Merges several data adapters into one scrollable view through a delegate adapter, each contributing its own layout helper.
  • RecyclerView Adapter Mergers - Merges multiple data adapters into one scrollable RecyclerView, each with its own layout behavior and data set.
  • Layout Helpers - Provides a registry of pluggable layout helpers that define measurement and placement for each RecyclerView section.
  • Heterogeneous RecyclerView Layouts - Combines grid, list, sticky, and custom layout sections within a single RecyclerView for heterogeneous content displays.
  • Heterogeneous RecyclerView Layouts - Arranges child views with different layout styles within one RecyclerView by delegating each section to a dedicated layout helper.
  • Section-Based Layout Management - Divides the scrollable view into sections, each assigned a dedicated layout helper for its own child arrangement.
  • Multiple Adapter Mergers - Merges several data adapters into one scrollable RecyclerView, each with its own layout behavior and data set.
  • Layout Manager Extensions - Extends RecyclerView's LayoutManager to delegate layout logic to modular helper components for each section.
  • Custom Layouts - Provides layout helpers that implement specific positioning logic for a range of items within a RecyclerView section.
  • RecyclerView Section Layouts - Defines reusable layout sections that position a range of items and plug them into the virtual layout manager.
  • Sticky Header Pinning - Ships a sticky header layout helper that keeps a header visible at the top while content scrolls beneath it.
  • Heterogeneous Scrollable - Arranges child views with different layout styles within one scrollable view using modular layout helpers.
  • Scrollable View Layout Systems - Provides a modular layout delegation system for mixing grid, list, sticky, staggered, and fixed layouts within a single RecyclerView.
  • Heterogeneous - Combines multiple adapters and layout styles into one scrollable RecyclerView for diverse content sections.
  • Virtual Adapter Bridges - Routes adapter data through a virtual adapter that maps positions to layout helpers for section-specific rendering.
  • Fixed Position Components - Positions child views at fixed screen locations during scrolling, with options for dragging or delayed appearance.
  • Staggered Grid - Arranges items in a staggered grid pattern within a RecyclerView section, supporting variable item heights.
  • Position Mapping Layers - Translates global adapter positions into section-local indices for efficient view binding.
  • Scroll Pinning Utilities - Pins child views at fixed screen coordinates during scrolling by intercepting scroll offsets.
  • Hierarchical Layout Compositions - Enables hierarchical composition of layout helpers for complex arrangements like grids inside lists.
  • Layout Managers - Layout manager for complex components.
  • List and Grid Components - Complex layout and component reuse framework.
  • List Components - Layout manager for complex, reusable components.
  • UI Components - LayoutManager extension for RecyclerView.

Star history

Star history chart for alibaba/vlayoutStar history chart for alibaba/vlayout

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. 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

Open-source alternatives to Vlayout

Similar open-source projects, ranked by how many features they share with Vlayout.
  • airbnb/epoxyairbnb avatar

    airbnb/epoxy

    8,556View on GitHub↗

    Epoxy is an Android library for building complex RecyclerView screens using a model-driven approach. It generates RecyclerView adapter models at compile time from annotated custom views, data binding layouts, or view holders, eliminating the manual boilerplate typically associated with view holders and adapters. The library provides a diffing engine that automatically compares model lists and applies minimal updates with animations for insertions, removals, and moves. The library distinguishes itself through its controller-based model building, where a controller class with a buildModels meth

    Java
    View on GitHub↗8,556
  • drakeet/multitypedrakeet avatar

    drakeet/MultiType

    5,759View on GitHub↗

    MultiType is an Android RecyclerView adapter and UI component toolkit designed to map multiple data types to distinct layouts within a single scrolling list. It functions as a multi-type view manager that automates the association between diverse data models and their corresponding view holders. The library includes a data-to-view expander that transforms single data objects into multiple list items, allowing complex information patterns to be represented across several rows. This mechanism enables the representation of complex data lists through object-to-item expansion. The system manages

    Kotlinandroid-librarymultitypeone-to-many
    View on GitHub↗5,759
  • hongyangandroid/flowlayouthongyangAndroid avatar

    hongyangAndroid/FlowLayout

    5,579View on GitHub↗

    FlowLayout is a custom Android view widget designed to wrap child elements across multiple lines. It functions as an adapter-based layout that populates and updates flowing content from a data source, specifically for displaying collections of tags or chips. The component includes a tag selection system that supports single or multiple selection modes with configurable limits. It manages user interactions through tag click handling and includes a state manager to persist selection indices across activity reconstruction and screen rotations. The library provides capabilities for dynamic data

    Java
    View on GitHub↗5,579
  • issacw0ng/swipebacklayoutIssacw0ng avatar

    Issacw0ng/SwipeBackLayout

    6,089View on GitHub↗

    SwipeBackLayout is an Android gesture navigation library and view component designed to implement edge-swipe gestures for navigating back to previous screens. It provides the underlying logic and layout management necessary to integrate horizontal swipe transitions into an application's screen stack. The library utilizes a custom layout manager to coordinate the simultaneous movement of foreground and background views. It maps horizontal touch offsets to the translation and opacity of view hierarchies, using interpolation to calculate visual progression based on the swipe percentage. The sys

    Java
    View on GitHub↗6,089
See all 30 alternatives to Vlayout→

Frequently asked questions

What does alibaba/vlayout do?

vlayout is an Android RecyclerView extension framework that uses pluggable layout helpers to mix grid, list, sticky, staggered, and fixed layouts within a single scrollable view. It provides a modular layout delegation system where each section of the RecyclerView is assigned a dedicated layout helper that manages its own measurement, placement, and decoration, enabling complex heterogeneous content displays.

What are the main features of alibaba/vlayout?

The main features of alibaba/vlayout are: Modular Layout Managers, Adapter Merging, RecyclerView Adapter Mergers, Layout Helpers, Heterogeneous RecyclerView Layouts, Section-Based Layout Management, Multiple Adapter Mergers, Layout Manager Extensions.

What are some open-source alternatives to alibaba/vlayout?

Open-source alternatives to alibaba/vlayout include: airbnb/epoxy — Epoxy is an Android library for building complex RecyclerView screens using a model-driven approach. It generates… drakeet/multitype — MultiType is an Android RecyclerView adapter and UI component toolkit designed to map multiple data types to distinct… hongyangandroid/flowlayout — FlowLayout is a custom Android view widget designed to wrap child elements across multiple lines. It functions as an… issacw0ng/swipebacklayout — SwipeBackLayout is an Android gesture navigation library and view component designed to implement edge-swipe gestures… jamztang/csstickyheaderflowlayout — CSStickyHeaderFlowLayout is a specialized layout wrapper for UICollectionView on iOS. It provides a sticky header list… flipkart/recyclerlistview — Recyclerlistview is a cross-platform virtualized list component for React Native and web. It functions as a…