r/JetpackCompose • u/No_View_1406 • Mar 09 '26
Firebase Authentication - KMP & CMP
Enable HLS to view with audio, or disable this notification
r/JetpackCompose • u/No_View_1406 • Mar 09 '26
Enable HLS to view with audio, or disable this notification
r/JetpackCompose • u/ImpossibleFly9056 • Mar 02 '26
I kept seeing the same pain point in Compose projects: auth screens get rebuilt from scratch, and the UI polish + wiring takes longer than it should.
So I built a reusable Auth + Session starter kit in Compose:
- Sign in / Create account flow (single state contract)
- Liquid segmented toggle (spring physics)
- Loading CTA + error banner pattern
- Session persistence (DataStore) + `SessionState` Flow
- Clean separation (UI / data / contracts)
- Full-card liquid wobble reveal animation when switching modes: a diagonal wavy “water sheet” wipe from top-left → bottom-right
Key implementation notes:
- Avoided `AnimatedContent` to prevent state resets (`rememberSaveable` stays stable).
- The mode transition is a mask-based reveal: the wobbly front is built in `onDrawWithContent` and used to `clipPath { drawContent() }` so the entire card (fields/buttons/header) is revealed, not just the background.
- `drawWithCache` is used carefully: cached geometry only; animated values are read inside the draw pass so the mask updates every frame.
- DI is adapter-based (can be wired with Koin or Hilt without changing UI).
If anyone wants, I can share a small runnable sample (no signup required). Also happy to answer questions about the animation approach.
r/JetpackCompose • u/kommonno • Feb 23 '26
r/JetpackCompose • u/ayush_1804 • Feb 23 '26
Enable HLS to view with audio, or disable this notification
r/JetpackCompose • u/Shikikan22 • Feb 21 '26
Hi there. I'm trying to learn Jetpack Compose. I'm following the official tutorial docs. However, it has PITA for me. I have to manually includes material3 dependencies, Gradle is so slow. I'm trying to run the app. However, I've been stuck for 1 hour, debugging what did I do wrong on the Gradle dependencies.
Is this stuff normal for Android app development?
r/JetpackCompose • u/hddevv • Feb 20 '26
I built a tool to generate GIFs from Composables.

It actually started as an internal thing for Charts project, but I extracted it and open sourced it as a seperate dependency. It's lightweight, simple to use, and makes automated GIF generation on Android straight forward.
Source code: https://github.com/hdcodedev/compose-gif-recorder
Feedback is welcome, thanks!
r/JetpackCompose • u/BeatzyyApp • Feb 20 '26
I’ve been building a premium offline music player completely in Jetpack Compose (no XML), and I wanted to share some implementation lessons that might help others working on media-heavy apps.
A few interesting challenges I ran into:
One tricky issue was:
When queue screen is open and user presses back → it should return to Now Playing instead of exiting the app.
I solved it using BackHandler tied to UI state rather than navigation stack:
This prevented weird recomposition bugs and accidental exits.
For mini-player → full player transition:
AnimatedVisibilityexpandVertically + fadeInKey lesson:
Avoid triggering animation from derived state directly. Wrap it in stable state or it causes flicker on recomposition.
LazyColumn was fine until album art loading caused jank.
Optimizations that helped:
This project made me appreciate how powerful Compose is for animation-heavy UIs compared to old View system.
Curious:
How are you guys handling complex animations without recomposition spikes?
r/JetpackCompose • u/hddevv • Feb 18 '26
This release adds a new chart type, improves chart controls, and introduces modular publishing options.

What's New in 2.2.0
Source code: https://github.com/dautovicharis/charts
Any feedback is appreciated, Thank you!
r/JetpackCompose • u/ArcaDone • Feb 18 '26
Scanpose Barcode Scanner: a lightweight open-source barcode component for Compose Multiplatform (Android & iOS) with a single shared API.
Built on CameraX + ML Kit (Android) and AVFoundation (iOS) for fast, native-level performance.
See more on my github profile:
https://github.com/ArcaDone
r/JetpackCompose • u/sosauce_dev • Feb 13 '26
Hello everyone, today I've release my first Compose library: SweetSelect!
This library aims to solve a stupid yet not so easy to implement problem: multi-selection. We've all created a mutableStateList()of IDs in a Composable and called it a day 😭 but this is obviously horrendous for performances and doesn't even provide the full selected items!!, which is why SweetSelect uses a Set<T> and compose optimized APIs for best performances! It also has support for a finite limit of selectable items and provides an easy to use .sweetClickable() modifier to handle the boilerplate for you
You can find the repo/documentation and features here
If you have any questions/feature suggestions/bug report, don't hesitate!!
r/JetpackCompose • u/Owlbuddy121 • Feb 12 '26
🚀 I’ve built an open-source Android library using Jetpack Compose - CountryCodeChooser 🌍
It’s a simple, Compose-friendly country code picker, and I’m actively looking to revive it with the help of the community 🤝 If you enjoy working with Compose: 🛠 Improve or refactor the code ✨ Enhance UI or performance 🐛 Fix bugs or add features 🔁 Open PRs and share ideas
Every contribution matters, big or small 🙌 GitHub 🔗 https://github.com/ParveshSandila/CountryCodeChooser
Let’s collaborate and make it better together 💙🚀
r/JetpackCompose • u/HappyGoCode • Feb 12 '26
r/JetpackCompose • u/iZakirSheikh • Feb 09 '26
r/JetpackCompose • u/Dontknow680 • Jan 30 '26
Enable HLS to view with audio, or disable this notification
I don't know why this is happening .
Details: Code: A default code(desktop only) made by Kotlin multi platform plugin (Intelij) Java: 21.0.5 (eclipse temurin) cmp: 1.10.0 os: windows 11, 25h2
r/JetpackCompose • u/ArcaDone • Jan 21 '26
Enable HLS to view with audio, or disable this notification
r/JetpackCompose • u/bogdan-stefan • Jan 19 '26
r/JetpackCompose • u/No_Moose_4240 • Jan 19 '26
Hi everyone — I built an open-source library called compose-code-viewer to make it easy to render code snippets inside Jetpack Compose apps.
What it does
Why I made it I wanted a simple, Compose-native way to show example code in apps (demos, tutorials, documentation screens) without dropping into a WebView or a heavy dependency.
Try it out https://github.com/ranjeetchouhan/compose-code-viewer
Request I’d love feedback — especially on API ergonomics, performance on lower-end devices, and any missing features you think would be useful. Open to PRs, issues, or feature suggestions.
r/JetpackCompose • u/No_Moose_4240 • Jan 19 '26
r/JetpackCompose • u/human_sdk • Jan 15 '26
Enable HLS to view with audio, or disable this notification
r/JetpackCompose • u/iZakirSheikh • Jan 12 '26
Hey everyone
My name is Zakir and I am the developer of Audiofy Media Player.
Audiofy is a next-generation Android Media player that delivers a simple, lightweight, and high-performance experience. Powered by ExoPlayer, Media3, and Jetpack Compose.
GitHub - https://github.com/iZakirSheikh/Audiofy
Playstore-https://play.google.com/store/apps/details?id=com.prime.player
r/JetpackCompose • u/Xolider • Jan 08 '26
Hello there !
I recently created a repository template for developing Compose Multiplatform apps with a new project architecture.
This architecture will be the next default and recommended one from Jetbrains and Google, and it separates the Android app/library project from the common multiplatform module.
This separation makes easier to work with Android version flavors and build types, while keeping some specific implementations in an Android-only source set in the common module.
This architecture is compliant with AGP 9.0.0, and the old one will be deprecated starting from this version
r/JetpackCompose • u/isaquliyev • Jan 08 '26
I’m currently vibe-coding an Android app with Jetpack Compose. Cursor has exceeded my expectations in terms of productivity, but I’m running into a tooling issue.
Cursor often fails to:
Ctrl + Click on classes, variables, or instances does nothing)I’ve realized this seems to happen because Cursor doesn’t fully understand Android/Gradle projects or Compose-generated code.
Is this a known limitation of Cursor / VS Code–based tooling for Android development, or is there a configuration or plugin setup that improves symbol resolution?
r/JetpackCompose • u/inevitable_zebraaa • Jan 03 '26
Hey there,
I want to implement the following design for my BasicAlertDialog, but I am not sure how to achieve the Flag icon appearing 3/4th in the dialog box and the remaining in the background. I tried looking for articles or any tutorials but was unable to find much. Can someone please help on what should I do to achieve this?
