30 open-source projects similar to facebookarchive/asyncdisplaykit, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best AsyncDisplayKit alternative.
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
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
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
PINRemoteImage is an image downloading and caching framework for iOS. It functions as a remote image loader and multi-threaded manager designed to fetch images from URLs and render them into user interfaces. The project includes specialized decoders for rendering GIF and Animated WebP formats. It also features a progressive JPG renderer that displays scans with blur effects to improve perceived loading speed on slow connections. The library manages concurrent download tasks with request deduplication and utilizes a hybrid memory and disk caching system. It handles high-resolution asset scali
Litho is an Android declarative UI framework and component library used to build user interfaces through a declarative API and immutable state. It functions as an asynchronous layout engine that maps components to a structured view hierarchy to automate view updates. The framework optimizes rendering performance by computing element positions on background threads to prevent blocking the main UI thread. It further improves efficiency by flattening nested view hierarchies and caching layout results. The system includes capabilities for state reconciliation, component recycling, and the render
Blitz is an HTML and CSS rendering engine and native UI framework designed to translate web-standard markup into visual interfaces for native applications. It functions as a layout engine that converts raw HTML strings into a structured object model for programmatic rendering. The project implements a web-standard layout engine using Flexbox and Grid models to compute element positions and sizes. It includes a dedicated SVG graphics renderer for displaying scalable vector graphics embedded within HTML-based layouts. The framework covers native windowing integration and system accessibility t
PageMenu is an iOS paging navigation controller and composite view controller manager. It organizes multiple independent view controllers within a scroll view, enabling users to swipe between full-page content views. The system features a customizable segmented control navigation bar that maps selectable segments to specific content views. This interface supports programmatic navigation to page indices and monitors page transitions via a delegate pattern. The controller manages horizontal page scrolling and view controller organization. It includes capabilities for styling the menu interface
Yoga is a cross-platform layout engine and embeddable core that determines the dimensions and offsets of hierarchical element trees. It provides a C++ implementation of the Flexbox layout model to calculate element positions and sizes based on web standards, ensuring a uniform appearance across diverse devices and operating systems. The engine is designed for portability via a C API, allowing the layout logic to be integrated into various host languages and platforms. It utilizes an incremental layout system that identifies modified subtrees and recalculates positions only for changed nodes a
Valdi is a cross-platform native UI framework that compiles declarative TypeScript code into native platform views. It functions as a declarative UI engine and multi-platform frontend toolchain designed to achieve high performance by avoiding web views. The framework features a native bridge binding tool that generates type-safe bindings between TypeScript and native languages, allowing direct access to platform APIs. It supports a hot-reload development workflow, enabling real-time updates to the user interface across platforms without requiring full project recompilation. The system includ
Walk is a comprehensive framework for building native Windows desktop applications. It functions as a GUI library and Windows API wrapper, providing a toolkit of native widgets and a declarative layout system for developing high-performance user interfaces. The project is distinguished by its data-binding framework, which uses reflection and string-based property paths to synchronize data sources with interface widgets. It also provides specialized support for high-DPI interface scaling and an optimized native message loop to reduce runtime overhead. The toolkit covers a wide range of capabi
ComponentKit is a declarative UI framework for building iOS interfaces through composition of small, reusable components. It provides a structured approach to constructing user interfaces where each component is defined as an immutable, pure function of its inputs, enabling predictable rendering and state management. The framework supports both stateless and stateful components, with controllers that can be attached to manage persistent state across component updates. The framework distinguishes itself through its component architecture that emphasizes explicit data flow and compile-time safe
MyLinearLayout is an Objective-C UI layout framework and responsive layout engine for iOS. It serves as a multi-pattern view orchestrator that organizes interface elements using a combination of linear, relative, and grid layout patterns. The library brings CSS flexbox and floating element behavior to iOS views for dynamic space distribution. It includes a dedicated system for right-to-left language orientations, providing automatic mirroring of interface elements to support localized layouts. The framework covers a broad range of arrangement strategies, including flow-based element wrapping
This is a layout library for Android applications that implements the CSS Flexible Box layout model. It provides a view container and engine that arrange child views by distributing space and aligning content according to a flexible box model. The framework enables the creation of responsive user interfaces that automatically adjust element positioning, wrapping, and growth based on available screen dimensions and orientations. The system includes capabilities for adaptive layout workflows, dynamic element alignment, and a virtualized rendering system for recycling views to display large dat
gui.cs is a .NET terminal user interface toolkit and framework used to build interactive, cross-platform text-based applications. It provides a structured system for composing terminal views using a view hierarchy and a dedicated layout engine. The library distinguishes itself through a component-based widget system and a constraint-based layout engine that allows interfaces to remain responsive across different terminal window dimensions. It employs a virtual-screen buffer to minimize flickering during redraws and uses state-driven theme configurations to maintain persistent visual styles.
Comlink is a remote procedure call library that transforms message-based communication into asynchronous function calls between the main thread and web workers. It provides a proxy-based interface that allows multiple threads to interact with a single object instance without manual message handling. The project enables the execution of functions across separate browser windows, iframes, and web workers, making external calls behave like local asynchronous operations. It supports the transfer of non-cloneable data through custom serialization handlers and allows for the movement of ownership f
AlamofireImage is an image downloading and caching library designed as an extension for Alamofire. It provides a serialization framework to convert network responses into image objects and a memory-based caching system to reduce redundant network requests. The project features a variant-aware asynchronous cache that stores both original images and their filtered versions separately. It includes tools for animating the replacement of placeholder images with downloaded content through various transition effects. The library covers image acquisition through parallel downloading and prioritized
BGABanner-Android is a UI library for Android providing customizable sliding image galleries and paginated sliders. It functions as a wrapper for ViewPager2, integrating navigation controls and the ability to render image banners that load content from the network. The library features auto-scrolling capabilities with looping sequences that can pause or resume based on user touch interactions. It includes configurable page indicators, such as dots or numbers, and supports custom transition animations to modify the visual effects when switching between views. The component manages banner inte
Muuri is a JavaScript grid layout library and draggable UI framework used to create responsive grids with drag-and-drop reordering, sorting, and animated filtering. It features a nested grid system that allows full grid instances to be embedded inside other grid items to create hierarchical structures. The library uses a web worker layout engine to offload heavy coordinate calculations to background threads, maintaining interface responsiveness during complex rearrangements. The system provides interactive capabilities for moving items between multiple containers, filtering visibility based
Cursive is a cross-platform terminal user interface toolkit and framework for building interactive applications in Rust. It provides a modular system for creating text-based graphical interfaces, utilizing a dedicated engine to manage the main display loop and view hierarchies. The toolkit features a backend-agnostic abstraction layer to ensure consistent rendering and input handling across different operating systems. It distinguishes itself through a palette-based theme engine that supports runtime theme loading and true color rendering, as well as the ability to generate user interface hie
re-frame is a functional framework for building single-page applications in ClojureScript. It provides a centralized, immutable database that serves as the single source of truth for the entire application state, enforcing a strict unidirectional data flow where events trigger state transitions and subsequent view updates. The framework distinguishes itself through a reactive signal graph and an interceptor-based middleware pipeline. By treating application logic as a sequence of data-driven events and declarative side effects, it decouples business logic from the view layer. This architectur
RESideMenu is an iOS side menu component and user interface framework element used to implement the side-drawer navigation pattern on Apple mobile devices. It provides a sliding side panel that organizes top-level application sections and navigation links. The component specifically implements a parallax navigation menu, which shifts content layers at different speeds to create a sense of depth during transitions. This allows for the creation of a sliding menu that moves content visually when controllers are opened from either side of the screen. The system manages the interface through gest
React Virtuoso is a React component library for rendering large datasets efficiently through virtualized lists, grids, tables, and chat interfaces. It automatically measures variable-height items at runtime, computes accurate scroll offsets without requiring fixed sizes, and renders only the items within the visible viewport plus a configurable buffer zone. The library manages scroll position through a state machine that tracks direction, position, and anchor items to handle auto-scroll, sticky headers, and bidirectional loading. The library distinguishes itself with specialized components fo
Nimbus is an iOS UI framework and application toolkit providing a collection of reusable interface components and layout tools for building native mobile applications. It includes a SwiftUI component library and a structured interface design system for maintaining consistent styling across Apple platforms. The framework employs a declarative approach to visual formatting, using CSS-based component styling to define colors, fonts, and spacing. It further streamlines development through a component-based construction system and declarative style mapping. The toolkit covers a range of interface
SDWebImage is an asynchronous image loading library for iOS that provides a framework for fetching, decoding, and caching images. It consists of a core loading library, a decoding engine, a processing pipeline, and a caching system designed to reduce network traffic and improve load times. The project features a two-tier caching architecture that stores assets in both volatile memory and persistent disk storage. It distinguishes itself through a modular loader pattern and a plugin-based decoding system, which allow for the integration of custom storage engines and the support of non-standard
This project is a reference Kotlin Android application template and a set of sample implementations demonstrating Clean Architecture principles. It provides a structural design that isolates core business rules from the user interface and data sources into distinct, layered modules. The implementation focuses on the Model-View-ViewModel (MVVM) pattern to decouple UI logic from data models. It utilizes a dependency injection framework to automate object creation and manage component lifecycles, while employing a repository pattern to abstract data requests across memory, disk, and cloud source
LearningNotes is a technical knowledge base and engineering study guide focused on Android framework internals, system architecture, and mobile performance optimization. It serves as a reference for analyzing the Android boot sequence, process bootstrapping, and system service initialization. The project provides detailed guides on mobile performance, including strategies for reducing memory footprints, identifying memory leaks, and optimizing image decoding. It further covers Android inter-process communication using AIDL and the Binder kernel driver, as well as software architecture manuals
JXCategoryView is a set of iOS user interface components for creating scrollable tab menus and paging containers. It provides a system for implementing category-based navigation where a segmented control coordinates with a content area to enable section transitions. The project focuses on the synchronization between a navigation menu and a paging view controller, ensuring that scrolling through content updates the active tab and vice versa. It supports highly customizable tab cells through subclassing, allowing for the integration of images, rich text, and notification badges. The library in
UITableView-FDTemplateLayoutCell is a specialized table view cell component for iOS designed to automatically calculate and manage dynamic row heights based on content constraints. It provides a programmatic implementation for determining cell dimensions using auto layout to ensure content fits without requiring manual height overrides. The project utilizes a template-cell sizing mechanism that employs a hidden cell instance to calculate dimensions without triggering the actual table view rendering process. To maintain scrolling performance in long lists, it includes a caching system that sto
This project is a declarative UI pattern library and reference implementation for structuring layouts, navigation flows, and data collections across Apple platforms. It provides a collection of practical implementation patterns and component examples for building user interfaces using the SwiftUI framework. The library serves as a cross-platform reference for rendering visual content on iOS and macOS. It includes a view implementation guide that covers managing navigation, handling user inputs, and embedding web content. The codebase covers broad capability areas including layout management
uni-app is a cross-platform framework for building mobile and web applications from a single Vue.js codebase. It provides a multi-platform app compiler and a cross-platform UI library to ensure consistent behavior and visual presentation across different operating systems. The project features a native API bridge and a universal plugin system that wrap native SDKs into a unified interface, allowing developers to access device hardware and operating system functions. It utilizes a specialized rendering engine and native performance compilation to bypass standard document overhead and achieve h