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

Descoperă cele mai bune repository-uri open source cu căutare AI.

ExploreazăCăutări recomandateAlternative open-sourceSoftware self-hostedBlogHartă site
ProiectDespreCum realizăm clasamentulPresăServer MCP
LegalConfidențialitateTermeni
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
facebookarchive avatar

facebookarchive/AsyncDisplayKitArchived

0
View on GitHub↗
13,345 stele·2,169 fork-uri·Objective-C++·8 vizualizăriasyncdisplaykit.org↗

AsyncDisplayKit

AsyncDisplayKit is an asynchronous UI framework and performance library for iOS. It provides a collection of performant alternatives to standard views, allowing developers to build responsive interfaces by offloading layout and rendering tasks to background threads.

The framework is centered around a declarative layout engine based on a flexbox model, which calculates element positions and sizes asynchronously. It utilizes a node-based abstraction to wrap native views, enabling the instantiation and configuration of UI hierarchies on background threads to prevent main thread blocking.

The system covers extensive performance optimization areas, including asynchronous image decoding, text rasterization, and proactive content preloading based on viewport proximity. It includes specialized support for high-performance scrolling lists with automatic row height calculation and a comprehensive set of UI components for rich text rendering and interactive controls.

Additional capabilities include multimedia handling for animated GIFs and video, network image management with multi-tier caching, and developer tools for debugging layout hierarchies and visualizing interaction areas.

Features

  • Declarative Layout Engines - Builds user interfaces by composing layout specifications and nested containers based on a box model.
  • Flexbox Layout Engines - Provides a declarative layout engine based on a flexbox model to calculate element positions and sizes asynchronously.
  • Flexbox Layout Models - Implements a declarative layout system based on a flexbox model to automate sizing and positioning.
  • Flexbox and Grid Layouts - Specifies the size and position of UI elements using a flexbox model for asynchronous measurement.
  • Asynchronous Loading - Performs image fetching and decoding on background threads to maintain smooth UI scrolling.
  • Asynchronous Layout Calculation - Computes the size and position of interface elements on background threads to prevent main thread freezes.
  • Asynchronous UI Frameworks - Provides a complete framework for building responsive iOS interfaces by offloading layout and rendering.
  • iOS UI Components - Offers a collection of performant alternative UI components for lists, buttons, and rich text.
  • List Scrolling Optimizations - Builds complex lists and grids with asynchronous row height calculation and data preloading for seamless browsing.
  • UI Performance Libraries - Reduces main thread blocking through asynchronous image decoding and text rasterization.
  • Scroll-Based Resource Loading - Triggers data fetching and layout calculations automatically as elements approach the visible viewport during scrolling.
  • Background Thread Dispatchers - Routes the computation of interface positions and sizes to background threads to prevent main thread locking.
  • Concurrent UI Construction - Instantiates and configures user interface components in parallel on background threads.
  • Logic and Presentation Separation - Decouples data preloading and business logic from view classes using dedicated controller-managed node lifecycles.
  • UI Thread Responsiveness - Offloads layout and rendering tasks to background threads to prevent frame drops.
  • Asynchronous Image Decoding - Decodes image data on background threads to prevent the main thread from blocking during UI updates.
  • Asynchronous Remote Image Fetching - Fetches images from URLs on background threads to prevent interface blocking.
  • Collection Rendering - Generates repeated UI elements for grids and lists using asynchronous layout and rendering.
  • Composition Hierarchies - Handles the addition and removal of subnodes automatically based on the layout requirements of a parent node.
  • View Hierarchies - Hosts a node-based view hierarchy within a view controller to enable asynchronous layout and rendering.
  • Dimension Definitions - Specifies element sizes using fixed point values, relative percentages, or automatic resolution.
  • Element Stacking - Positions children in horizontal or vertical stacks using a flexbox algorithm.
  • High-Performance Rendering - Produces high-frame-rate views by offloading rendering tasks to eliminate dropped frames.
  • Layout Composition Frameworks - Defines relationships between UI elements using container specifications to arrange children in stacks or overlays.
  • Linear Layouts - Arranges elements in horizontal or vertical stacks with configurable spacing and flexible growth behaviors.
  • Asynchronous Rendering - Offloads image decoding and text rasterization to background threads to eliminate frame drops during scrolling.
  • Network Image Renderers - Fetches and displays images from remote web addresses while handling caching and progressive loading.
  • View Controller Lifecycle Management - Integrates asynchronous interface components into the standard view controller lifecycle.
  • Sizing Constraints - Sets preferred, minimum, and maximum widths and heights for layout elements to control space occupancy.
  • Virtual View Abstractions - Uses a node-based abstraction to wrap native views, allowing UI hierarchies to be configured on background threads.
  • Visibility-Based Resource Management - Intelligently adjusts memory and data loading priorities based on the visibility depth of view controllers.
  • Automatic Node Hierarchy Management - Determines the presence of subnodes based on the layout specification to remove manual node management.
  • Flexbox Layout Patterns - Adjusts how children grow, shrink, and align within a stack, including flex basis and baseline alignment.
  • Main Thread Offloading - Offloads view property configuration and construction to background threads to maintain UI responsiveness.
  • UI Transition Animations - Creates fluid animations and interpolations between different layout states during content changes.
  • Network Image Caching - Stores downloaded images in a local cache to minimize redundant network requests.
  • Preloading - Proactively fetches data from disks or APIs when UI elements enter a predefined proximity range.
  • Scroll-Based - Loads content and assets ahead of the current scroll position to ensure a seamless browsing experience.
  • Batched Data Loading - Triggers background data loading in batches as the user scrolls toward the end of a list.
  • Image Transformations - Applies visual effects and drawing operations to images on background threads to avoid UI stutters.
  • Asynchronous Image Effects - Executes image transformations such as rounding and overlays on background threads before final display.
  • Asynchronous Video Rendering - Displays video assets using a performant layer that maintains main thread responsiveness.
  • Layer-Backed Rendering Optimization - Switches nodes from view-based to layer-based rendering to reduce overhead for non-interactive components.
  • UI Overlay Layers - Creates layered interfaces by placing layout elements directly on top of one another.
  • Animated GIF Playback - Renders animated GIF files loaded from remote sources within the user interface on iOS.
  • Visibility-Based Resource Management - Automatically reduces data fetch and display ranges of child components when views move off screen.
  • Layer-View Wrapping - Encapsulates standard view subclasses within a node abstraction to integrate traditional components into an asynchronous system.
  • Layout Interpolators - Calculates and animates the difference between two layout specifications to smoothly reposition elements.
  • Background Display Preparation - Executes text rasterization and image decoding in the background as elements approach the visible area.
  • Component Insets - Wraps a child element with a specified margin on each edge to create padding around content.
  • Layer Flattening - Flattens complex node trees into single composited layers to reduce rendering overhead.
  • Aspect Ratio Constraints - Scales components based on a fixed ratio relative to the available width or height.
  • Element Centering - Positions child elements within available space based on specified horizontal and vertical centering options.
  • Element Positioning - Places child elements at specific bounds such as corners, edges, or the center of the layout area.
  • Absolute Positioning - Allows precise placement of elements using exact X and Y coordinates within a layout.
  • Hybrid Synchronous-Asynchronous Cells - Integrates standard collection cells and asynchronous nodes within a single collection view for flexible rendering.
  • Layout Alignment Utilities - Aligns elements centrally along X or Y axes using specific sizing constraints.
  • Layout Animation Engines - Smoothly transitions the size and position of interface elements during bounds changes or device rotation.
  • Layout Insets - Adds padding around a component or a group of elements to create margins between content and edges.
  • Layout Transition Libraries - Animates changes between different layout states and provides the ability to cancel transitions.
  • Dynamic Item Size Calculators - Automatically calculates the scrollable area of a view based on its internal layout specification.
  • Overlay Components - Places elements directly on top of others, stretching the overlay to match the base child's dimensions.
  • Collection Cell Constraints - Defines size boundaries for individual items within a collection to control layout growth and shrinkage.
  • Mixed-Node Cell Integration - Integrates standard collection cells alongside asynchronous nodes to enable incremental migration from traditional view controllers.
  • Rich Text Renderers - Renders attributed strings with custom styling, truncation, and interactive hyperlinks.
  • Interaction Depth Calculation - Calculates the number of user interactions required to make a view controller visible to adjust resource usage.
  • Dynamic Height Calculation - Provides automatic determination of list item heights based on content constraints to eliminate manual calculations.
  • Visibility State Transitions - Executes custom logic through callbacks as UI elements transition between preloading, display, and visible states.
  • Progressive Image Loading - Implements perceived loading speed improvements by swapping low-resolution placeholders for high-resolution versions.
  • View-Layer Hybrid Rendering - Reduces rendering overhead by switching components between view-based and layer-based modes for non-interactive elements.
  • Custom Cell Subclassing - Supports the creation of flexible cell components for tables, collections, and pagers through custom subclassing.
  • Viewport Proximity Tracking - Determines the proximity of view controllers to the screen to manage content loading and visibility.
  • Visibility-Driven Resource Management - Reduces data and image ranges of views as they move deeper into the navigation stack to optimize memory.
  • Viewport Visibility State Tracking - Triggers callbacks when nodes enter or exit visibility states to optimize the timing of resource loading.
  • Viewport-Based Preloading - Triggers layout measurement and data fetching in the background before elements enter the visible viewport.

Istoric stele

Graficul istoricului de stele pentru facebookarchive/asyncdisplaykitGraficul istoricului de stele pentru facebookarchive/asyncdisplaykit

Căutare AI

Explorează mai multe repository-uri excelente

Descrie ce ai nevoie în limbaj simplu — AI-ul sortează mii de proiecte open source selectate în funcție de relevanță.

Start searching with AI

Întrebări frecvente

Ce face facebookarchive/asyncdisplaykit?

AsyncDisplayKit is an asynchronous UI framework and performance library for iOS. It provides a collection of performant alternatives to standard views, allowing developers to build responsive interfaces by offloading layout and rendering tasks to background threads.

Care sunt principalele funcționalități ale facebookarchive/asyncdisplaykit?

Principalele funcționalități ale facebookarchive/asyncdisplaykit sunt: Declarative Layout Engines, Flexbox Layout Engines, Flexbox Layout Models, Flexbox and Grid Layouts, Asynchronous Loading, Asynchronous Layout Calculation, Asynchronous UI Frameworks, iOS UI Components.

Care sunt câteva alternative open-source pentru facebookarchive/asyncdisplaykit?

Alternativele open-source pentru facebookarchive/asyncdisplaykit includ: nixzhu/dev-blog — This project is a comprehensive framework for iOS application development, centered on building mobile applications… texturegroup/texture — Texture is an iOS framework for building user interfaces that render on background threads using thread-safe node… facebook/asyncdisplaykit — AsyncDisplayKit is an asynchronous UI framework and layout engine for iOS designed to offload layout and rendering… phuocng/csslayout — CSS Layout is a pure CSS pattern library that provides pre-built layout components for common page structures,… pinterest/pinremoteimage — PINRemoteImage is an image downloading and caching framework for iOS. It functions as a remote image loader and… facebook/litho — Litho is an Android declarative UI framework and component library used to build user interfaces through a declarative…

Alternative open-source pentru AsyncDisplayKit

Proiecte open-source similare, clasificate după numărul de funcționalități comune cu AsyncDisplayKit.
  • nixzhu/dev-blogAvatar nixzhu

    nixzhu/dev-blog

    3,906Vezi pe GitHub↗

    This project is a comprehensive framework for iOS application development, centered on building mobile applications that feature custom user interface components, asynchronous task management, and local data persistence. It serves as a technical knowledge base for software engineering, providing tools to organize and publish architectural analyses and notes in Markdown format. The framework distinguishes itself through a robust document-based storage layer that utilizes BSON-formatted records to perform CRUD operations within a NoSQL document store. It provides extensive system integration ca

    Vezi pe GitHub↗3,906
  • texturegroup/textureAvatar TextureGroup

    TextureGroup/Texture

    8,173Vezi pe GitHub↗

    Texture is an iOS framework for building user interfaces that render on background threads using thread-safe node abstractions. It provides an asynchronous display node architecture that constructs and composites view hierarchies off the main thread, then synchronises the final bitmap for presentation, enabling smooth and responsive apps. The framework replaces UIKit's standard view system with node-based hierarchies that can be created, configured, and mutated on any queue without locking the main thread. The framework distinguishes itself through a precomputed rendering pipeline that decode

    Objective-C++asyncdisplaykitpinterestrendering
    Vezi pe GitHub↗8,173
  • phuocng/csslayoutAvatar phuocng

    phuocng/csslayout

    8,060Vezi pe GitHub↗

    CSS Layout is a pure CSS pattern library that provides pre-built layout components for common page structures, implemented entirely with CSS using flexbox and grid. The collection focuses on reusable, encapsulated components that handle overlapping elements, vertical centering, sticky footers, and classic page layouts without requiring any JavaScript for rendering or interactivity. The library offers a range of practical layout implementations including centered navigation menus, element stacking techniques, holy grail page layouts, and responsive grid systems. Each pattern is built as a self

    MDXcsscss-gridflexbox
    Vezi pe GitHub↗8,060
  • facebook/asyncdisplaykitAvatar facebook

    facebook/AsyncDisplayKit

    13,344Vezi pe GitHub↗

    AsyncDisplayKit is an asynchronous UI framework and layout engine for iOS designed to offload layout and rendering operations from the main thread. It functions as a concurrent interface library that handles asynchronous image decoding and UI composition to maintain high frame rates. The project uses a node-based view hierarchy to build thread-safe interface structures on background threads. It includes an intelligent preloading system that predicts scroll direction to trigger data fetching and layout operations for elements before they become visible. The framework covers high-performance m

    Objective-C++
    Vezi pe GitHub↗13,344
Vezi toate cele 30 alternative pentru AsyncDisplayKit→