dimezis/blurview

Dynamic iOS-like blur of underlying Views for Android

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 32 minutes ago
Added to GitGenius on September 17th, 2026
Created on April 21st, 2016
Open Issues & Pull Requests: 20 (+0)
GitHub issues: Enabled
Number of forks: 379
Total Stargazers: 4,055 (+0)
Total Subscribers: 56 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 1.0 hours
Mean response time: 43.3 hours
90th percentile: 17.6 hours
Tracked items: 56

Most active contributors

Sign in to see contributor activity.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 14
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 358 days
Stale 30+ days: 14
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

  • bug (2)
  • enhancement (1)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

BlurView is an Android library that provides dynamic blur effects for underlying views, similar to iOS-style blur.

The library solves the problem of rendering blurred backgrounds of underlying content in Android applications. It works by wrapping content into a BlurTarget and passing it to a BlurView, which then blurs that target's content and displays it as a background for its own children. The children themselves remain unblurred. The tool updates its blurred rendering when view hierarchy changes occur and responds to position and size changes, including during view and property animations. On API 31 and above, blurring is performed on the system Render Thread; on earlier APIs, it uses the main thread with optimized RenderScript Allocations for performance.

Developers should choose BlurView if they need efficient, hardware-accelerated blur effects without constant view invalidation. It suits projects requiring multiple blur views on screen simultaneously or blurring of dialogs and their backgrounds. The README explicitly compares it to BlurKit and RealtimeBlurView, noting that those libraries constantly invalidate themselves, whereas BlurView avoids this overhead. The tool supports TextureView blur on API 31 and above, though SurfaceView-based components like VideoView, MapFragment, and GLSurfaceView cannot be blurred. Rounded corners can be achieved using standard Android drawable and clipping approaches.

The project maintains separate code paths for API 31 and above versus earlier versions, requiring testing on both to ensure compatibility. The library is distributed through Jitpack using release tags as the source for stable artifacts. A major version update introduced significant changes and migration steps documented separately, reflecting active evolution of the codebase.