skydoves

skydoves/Cloudy

Kotlin Apache-2.0 Mobile

☁️ Kotlin Multiplatform blur and liquid glass effect library for Compose, with GPU-accelerated rendering and CPU fallback for older devices.

1.2k stars
50 forks
active
GitHub +11 / week

1.2k

Stars

50

Forks

4

Open issues

6

Contributors

0.6.1 27 Jun 2026

AI Analysis

Cloudy is a Kotlin Multiplatform library for Jetpack Compose that provides GPU-accelerated blur, liquid glass, and custom shader effects for Android UI composables. It serves developers building Android apps who need performant visual effects with CPU fallback support for older devices. This is a specialized UI effects library, not a general-purpose tool—best suited for Android/Compose developers requiring advanced rendering capabilities.

Mobile Library Discovery value: 6/10
Documentation 8/10
Activity 9/10
Community 7/10
Code quality 7/10

Inferred from signals mentioned in the README (tests, CI, type safety) — not a review of the actual code.

Overall score 8/10

AI's overall editorial judgment — not an average of the bars above, can weigh other factors too.

kotlin-multiplatform jetpack-compose gpu-rendering visual-effects android
Actively maintained Well documented Niche/specialized use case Production ready
Deep Analysis · Based on README and public signals
2w ago

Kotlin Multiplatform blur library for Compose with GPU acceleration and CPU fallback

Cloudy is a Kotlin Multiplatform library providing blur and liquid glass effects for Jetpack Compose across Android, iOS, macOS, Desktop, and WASM. It addresses the gap left by Android 12+'s native blur modifier (API 31+) and deprecated RenderScript by offering backported blur support for older Android versions (API 23+) using optimized C++ and GPU-accelerated paths. The library serves mobile and cross-platform developers building visually sophisticated UIs with glassmorphism effects. Adoption appears modest but focused; it occupies a specific niche rather than competing broadly with general-purpose Compose libraries.

Origin

Created November 2022 by skydoves, Cloudy emerged as the Android ecosystem moved away from RenderScript (deprecated in Android 12). It fills a compatibility gap for developers targeting sub-Android-12 devices while providing multiplatform coverage as Kotlin Compose expanded beyond Android. The project sits within skydoves' broader ecosystem of Compose utility libraries.

Growth

Repository gained 1,202 stars over ~3.5 years with 49 forks. Growth appears steady rather than explosive; README indicates Android Weekly feature and stable Maven Central distribution. Recent activity shows 21 stars in 7 days (as of 2026-06-29) and active maintenance (last push 2026-06-28). The project likely benefited from: (1) developer awareness of RenderScript deprecation, (2) Compose adoption curve, and (3) skydoves' established reputation. Growth trajectory suggests acceptance within Compose ecosystem but not viral adoption.

In production

Adoption not verified with concrete production case studies. Indirect signals: Maven Central distribution, Android Weekly feature mention, Android Arsenal API badge, and presence in similar-repos lists suggest awareness within Android/Compose developer circles. However, no public testimonials, major app adoption, or deployment scale data provided in README. The modest star count relative to adjacent libraries (Haze 2362, Landscapist 2560, Balloon 3984) and lack of mentioned enterprise users suggest niche rather than mainstream production adoption.

Code analysis
Architecture

Based on README, Cloudy appears to use platform-specific implementations: RenderEffect GPU rendering on Android 31+, native C++ with NEON/SIMD optimization on Android 30-, and Skia BlurEffect (Metal GPU) on iOS/macOS/Desktop, with WebGL fallback for WASM. State management via CloudyState enum (Success.Applied, Success.Captured, Loading, Error, Nothing) allows callers to observe blur status. The modifier-based API integrates into Compose's composition tree. Implementation details beyond README scope; actual performance characteristics and GPU memory handling not documented in excerpt.

Tests

Not documented in README. No test artifacts, coverage reports, or testing strategy mentioned.

Maintenance

Last push 2026-06-28 (one day before analysis date) indicates active maintenance. Builds passing per badge. Current version 0.6.1 published to Maven Central. Issue and PR activity not visible from metadata, but rapid iteration (version numbering suggests regular releases) and multiplatform scope indicate ongoing investment. Project does not appear stagnant; maintenance cadence consistent with small but active team.

Honest verdict

ADOPT IF: you are targeting Compose apps on Android <12 (API <31) and need blur or liquid glass effects, or you are building cross-platform Kotlin Multiplatform mobile apps and want unified blur API across Android, iOS, and Desktop. AVOID IF: you only support Android 12+ and can use native blur modifier, as Cloudy adds dependency complexity without performance benefit. MONITOR IF: you are considering Cloudy for background blur specifically—Haze may offer superior specialization for that use case; evaluate feature parity and adoption maturity before committing.

Independent dimensions

Mainstream potential

3/10

Technical importance

6/10

Adoption evidence

2/10

Risks
  • Adoption not verified at scale: no public production deployments or user testimonials documented. Risk of maintenance discontinuation if skydoves reduces focus.
  • Smaller community than adjacent libraries (Haze, Landscapist): fewer Stack Overflow answers, examples, and third-party integrations. Support surface thinner.
  • Multiplatform coverage claimed but iOS/macOS/Desktop/WASM implementations not separately auditable from README. Likely lower QA rigor on non-Android platforms due to smaller user base.
  • GPU memory and performance under heavy blur load on older Android devices (API 23-30 CPU path) not documented. NEON/SIMD claims not independently verified.
  • State management (CloudyState) adds observer pattern complexity; callback chains in composition may have subtle lifecycle bugs if not carefully used. Learning curve steeper than simple modifier.
Prediction

Cloudy will likely remain a stable, niche utility within the Kotlin Compose ecosystem, serving developers who specifically need Android <12 blur support or multiplatform blur coverage. Mainstream adoption unlikely unless it consolidates with or merges into Haze or native Compose effects. Risk of slow atrophy if Android 11 (API 30) adoption drops below 5% market share, reducing backport demand.

0 found this helpful

Newsletter

Get analyses like this every Monday

Free weekly digest of the most interesting open-source discoveries.

Languages

Kotlin
91%
C++
8.5%
CMake
0.4%
Swift
0.1%
HTML
0.1%

Information

Language
Kotlin
License
Apache-2.0
Last updated
9h ago
Created
44mo ago
Analyzed with
anthropic/claude-haiku-4-5

Stars over time

Loading…

Contributors over time

Top 100 contributors only — repos with more will plateau at 100.

Loading…

Similar repos

Kyant0

Kyant0/AndroidLiquidGlass

Liquid Glass is a customizable visual effects library for Compose Multiplatform...

2.9k Kotlin Mobile
skydoves

skydoves/landscapist

Landscapist is a pluggable, optimized image loading library for Jetpack Compose...

2.6k Kotlin Mobile
chrisbanes

chrisbanes/haze

Haze is a hardware-accelerated visual effects library for Compose Multiplatform...

2.4k Kotlin Mobile
skydoves

skydoves/Balloon

Balloon is a sophisticated tooltip library for Android and Jetpack Compose that...

4k Kotlin Mobile
valentinilk

valentinilk/compose-shimmer

Compose-shimmer is a Kotlin library providing shimmer animation effects for...

1.1k Kotlin Mobile
vs. alternatives
chrisbanes/haze

Haze (2362 stars) is also a Compose blur library. Haze appears to focus on background blur (backdrop blur) and may have stronger adoption. Cloudy explicitly supports both element blur and background blur plus liquid glass, potentially offering broader effect coverage, but without documented comparative performance or feature parity analysis.

Kyant0/AndroidLiquidGlass

AndroidLiquidGlass (2878 stars) is a specialized liquid glass library. Cloudy incorporates liquid glass as one feature alongside blur. Kyant0's project likely has narrower but possibly deeper feature set; Cloudy trades specialization for breadth across blur + glass + multiplatform.

skydoves/landscapist

Landscapist (2560 stars) is an image loading library, orthogonal to Cloudy's blur focus. Both are skydoves ecosystem members. Different problem domain; not a direct competitor.

Android native blur modifier

Android 12+ (API 31+) offers native blur via RenderEffect, eliminating need for Cloudy on modern devices. Cloudy's value proposition is backport compatibility (API 23+) and multiplatform coverage. On Android 31+ using Cloudy vs. native blur, performance likely favors native, but Cloudy provides unified API across older Android and non-Android platforms.

Jetpack Compose standard effects

Compose's built-in modifiers and effect system are foundational. Cloudy extends this layer with specific visual effects. Not a replacement; a specialized add-on.