texturegroup/texture

Smooth asynchronous user interfaces for iOS apps.

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 45 minutes ago
Added to GitGenius on September 8th, 2026
Created on February 10th, 2017
Open Issues & Pull Requests: 625 (+0)
GitHub issues: Enabled
Number of forks: 1,310
Total Stargazers: 8,179 (+0)
Total Subscribers: 170 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 118.5 days
Mean response time: 401.1 days
90th percentile: 1567.4 days
Tracked items: 9

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 10
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 829 days
Stale 30+ days: 10
Stale 90+ days: 9

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • Swift (1)
  • help wanted (1)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

Texture is a framework for building smooth asynchronous user interfaces in iOS apps.

Texture solves the problem of frame drops and unresponsive interfaces caused by expensive UI operations blocking the main thread. On iOS, the main thread has roughly sixteen milliseconds per frame to execute layout and drawing code, but system overhead typically leaves less than ten milliseconds before a frame drops. Texture's core abstraction is the node, an ASDisplayNode that wraps UIView and CALayer. Unlike views, nodes are thread-safe and can be instantiated and configured in parallel on background threads. This allows developers to move image decoding, text sizing, text rendering, layout calculations, and other expensive operations off the main thread, keeping it available to respond to user interaction and maintain smooth 60 frames-per-second rendering.

Texture suits iOS developers building performance-sensitive applications, particularly those with complex scrolling interfaces, cell reuse patterns, or data preloading requirements. The framework provides advanced features beyond basic node threading, including utilities to eliminate common boilerplate patterns in modern iOS apps and to handle cell reuse bugs that plague traditional UIKit development. Developers who have struggled with frame drops, performant data preloading for paginated or scrolling interfaces, or general UIKit complexity can benefit from adopting it.

The project maintains active community engagement through a dedicated Slack channel for real-time debugging and discussion. The framework welcomes external contributions and provides documented processes for both releasing and contributing code. Sample projects and comprehensive API documentation are available to help developers get started.