skydoves
skydoves.bsky.social
skydoves
@skydoves.bsky.social
Senior Developer Advocate at @revenuecat.com 🥑

Google Developer Expert for Android and Kotlin. An open-source software engineer.

GitHub: github.com/skydoves
Dove Letter: github.com/doveletter
Book for Android: https://www.android.skydoves.me
And… yeah, this is my GitHub contribution graph over the past 8 years. Consistency is everything.

github.com/skydoves/
January 1, 2026 at 9:43 AM
Some previews of Dove Letter are now available, showing how the weekly letters are delivered.

doveletter.skydoves.me/preview
Dove Letter
A private subscription where you can learn, discuss, and share new knowledge about Android and Kotlin.
doveletter.skydoves.me
January 1, 2026 at 1:34 AM
Christmas firework animation in Jetpack Compose, inspired by Amos Gyamfi.

Code on gist: gist.github.com/skydoves/ade...
January 1, 2026 at 12:57 AM
The @revenuecat.com's Purchases Android & Jetpack Compose SDK v9.18.1 has been released.

github.com/RevenueCat/p...
GitHub - RevenueCat/purchases-android: RevenueCat SDK for Android & Jetpack Compose, easy in-app purchases and subscriptions.
RevenueCat SDK for Android & Jetpack Compose, easy in-app purchases and subscriptions. - RevenueCat/purchases-android
github.com
December 31, 2025 at 11:04 PM
I’m excited to share that Dove Letter now has its own website! 🕊️🚀

It brings real-time highlights, comments, discussions, emoji reactions, bookmarking, and a more interactive newsletter experience!

doveletter.skydoves.me
Dove Letter
A private subscription where you can learn, discuss, and share new knowledge about Android and Kotlin.
doveletter.skydoves.me
December 31, 2025 at 1:47 PM
We at @revenuecat.com are looking for a Developer Support Engineer. Fully-remote, USD $120K + offers equity.

The preferred locations are the Americas (PST only) and APAC.

jobs.ashbyhq.com/revenuecat/b...
Developer Support Engineer
RevenueCat removes the headaches of building and scaling in‑app subscriptions. Since graduating from YC’s S18 batch we’ve grown into the default monetization platform for mobile: we’re in >40% of newl...
jobs.ashbyhq.com
December 29, 2025 at 9:54 PM
Want to read only specific sections of the Manifest Android Interview book, like Jetpack Compose? Start with Part 1: Android or Part 2: Jetpack Compose.

leanpub.com/manifest-and...
Manifest Android Interview (Part1: Android)
Deep dive into the Android and Jetpack Compose fundamentals.
leanpub.com
December 29, 2025 at 1:21 PM
A great course on how to become a multi-millionaire CTO, taught by Miguel, the CTO of RevenueCat.

miguelcarranza.es/course/
CTO Mastery Course - From Developer to Multi-Millionaire!
miguelcarranza.es
December 28, 2025 at 3:00 PM
Landscapist 2.8.0 introduces a new core networking system! 🚀

It's very lightweight, highly performant, KMP/CMP-first, and fully compatible with all existing Landscapist image libraries.

skydoves.github.io/landscapist/...
Landscapist Core - Landscapist
A pluggable, highly optimized Jetpack Compose image loading library that fetches and displays network images with Glide, Coil, and Fresco.
skydoves.github.io
December 28, 2025 at 8:07 AM
The @revenuecat.com's codelab page has been completely polished!

revenuecat.github.io/codelabs/tes...
Set up Test Store for Android | RevenueCat Codelabs
Set up Test Store for Android
revenuecat.github.io
December 26, 2025 at 1:57 AM
The second round of revisions for Practical Kotlin Deep Dive is underway, and the book is expected to be around 500 pages in a PDF file.

It has already been more than a year since I started writing the first chapter.
December 25, 2025 at 10:23 AM
Landscapist 2.7.0 has been released!

Now, it supports `ZoomablePlugin` and Sub-sampling for Kotlin Multiplatform.

github.com/skydoves/lan...
December 25, 2025 at 5:26 AM
Compose Stability Analyzer 0.6.6 has been released.

🦄 This is an IntelliJ plugin that provides real-time analysis of the stability of Jetpack Compose composable functions directly within Android Studio and IntelliJ IDE.

github.com/skydoves/com...
December 24, 2025 at 10:29 AM
ColorPicker Compose now includes a playground on a WebAssembly (Wasm) demo page, fully written in Compose Multiplatform.

github.com/skydoves/col...
December 24, 2025 at 8:20 AM
I just published a new open-source project, Cat Paywalls Kotlin Multiplatform.

🐈 Cat Paywall KMP demonstrates modern KMP development and in-app purchases using CMP, Metro, Ktor, Coroutines, Landscapist, Navigation, Lifecycle, and @revenuecat.com.

github.com/RevenueCat/c...
GitHub - RevenueCat/cat-paywalls-kmp: 🐈 Cat Paywall KMP demonstrates modern KMP development and in-app purchases using CMP, Metro, Ktor, Coroutines, Landscapist, Navigation, Lifecycle, and RevenueCat.
🐈 Cat Paywall KMP demonstrates modern KMP development and in-app purchases using CMP, Metro, Ktor, Coroutines, Landscapist, Navigation, Lifecycle, and RevenueCat. - RevenueCat/cat-paywalls-kmp
github.com
December 23, 2025 at 6:24 AM
If you want a deep understanding of Jetpack Compose’s internal mechanisms, covering the Compose compiler, runtime, and UI, don’t miss their Christmas 50% discounts.

leanpub.com/composeinter...
Jetpack Compose internals
This book consciously explores the guts of Jetpack Compose, the brand new library by Google and the Android team that will become the future of Android UI.
leanpub.com
December 22, 2025 at 9:36 AM
Sandwich 2.2.0 has been released.

Now it supports recovery, validation, filter, zip, and peek extensions for ApiResponse. Sandwich is an adaptable and lightweight sealed API library designed for handling API responses and exceptions in Kotlin.

github.com/skydoves/san...
GitHub - skydoves/sandwich: 🥪 Sandwich is an adaptable and lightweight sealed API library designed for handling API responses and exceptions in Kotlin for Retrofit, Ktor, and Kotlin Multiplatform.
🥪 Sandwich is an adaptable and lightweight sealed API library designed for handling API responses and exceptions in Kotlin for Retrofit, Ktor, and Kotlin Multiplatform. - skydoves/sandwich
github.com
December 22, 2025 at 9:33 AM
I just published a new article, 'Understanding Google Play’s subscription lifecycle: a complete guide'.

You will break down the complete Google Play subscription lifecycle in depth, and how RevenueCat makes everything easy.

www.revenuecat.com/blog/enginee...
Understanding Google Play's subscription lifecycle: a complete guide
You will break down the complete Google Play subscription lifecycle in depth.
www.revenuecat.com
December 22, 2025 at 1:10 AM
Balloon 1.7.0 has been released!

It fixed a bunch of issues, and now you can implement tooltips on a composable function with `Modifier.balloon(balloonState)` API.

github.com/skydoves/Bal...
GitHub - skydoves/Balloon: :balloon: Modernized and sophisticated tooltips, fully customizable with an arrow and animations for Android and Jetpack Compose.
:balloon: Modernized and sophisticated tooltips, fully customizable with an arrow and animations for Android and Jetpack Compose. - skydoves/Balloon
github.com
December 21, 2025 at 6:40 AM
The RevenueCat's IntelliJ plugin is live on JetBrains Marketplace 🎉

plugins.jetbrains.com/plugin/29265...
RevenueCat Dashboard - IntelliJ IDEs Plugin | Marketplace
RevenueCat Dashboard integration for IntelliJ IDEA and Android Studio. Features: Connect to your RevenueCat Dashboard directly from your IDE Receive real-time...
plugins.jetbrains.com
December 20, 2025 at 6:32 AM
How do you handle in-app purchases & subscriptions in Kotlin Multiplatform? I'm working on an OSS project that demonstrates IAP in both Android & iOS using @revenuecat.com .
December 20, 2025 at 6:20 AM
Manifest Android Interview book v1.10 has been released.

Also, the main page has been renewed. This book covers Android and Compose fundamentals, internals, and concepts useful for technical interviews.

www.android.skydoves.me
Manifest Android Interview - The Ultimate Android & Jetpack Compose Interview Guide
Master Android interviews with 108 questions, 162 exercises, and 50+ pro tips. Deep dive into Android Framework, Jetpack Compose, UI architecture, and more. By Google Developer Expert Jaewoong Eum.
www.android.skydoves.me
December 20, 2025 at 12:45 AM
Compose Stability Analyzer has already surpassed 10,000 downloads on the JetBrains Marketplace.

Real-time analysis plugin of Jetpack Compose composable functions' stability directly within Android Studio or IntelliJ IDE.

github.com/skydoves/com...
December 19, 2025 at 1:34 PM
KMP in-app purchases & paywalls codelab using RevenueCat.

revenuecat.github.io/codelab/kmp/...
KMP In-App Purchases & Paywalls
revenuecat.github.io
December 19, 2025 at 3:31 AM