NeoMotion is a modular, production-ready Jetpack Compose library that implements advanced, platform-aligned interaction patterns for Modern Android (specifically targeting Android 16 / API 36).
Instead of reinventing the wheel, NeoMotion wraps real, stable platform APIs into clean Compose-first interfaces with a premium, high-end aesthetic.
Android 16 enforces Predictive Back. MorphBackBox intercepts the system back gesture and translates it into a real-time SeekableTransitionState progress value (0f to 1f).
- Bind gesture progress directly to scale, rotation, blur, and alpha.
- Perfect for Card-to-Detail Shared Element transitions.
- Fully compatible with Compose Navigation
2.8.0+.
A complete wrapper around Android 16's new Notification.ProgressStyle.
- Experience Android 16 Live Updates: Promotes ongoing actions (uploads, rides, deployments) to the Lock Screen chip, Status Bar pill, and top of the notification shade.
- Dynamic Pacing: Realistic simulation of deployment stages (Scanning, Uploading, Verifying, Deploying).
- Graceful Fallback: Automatically degrades to standard determinate progress notifications for APIs 26–35.
- Permission Safe: Built-in handling for the mandatory
POST_NOTIFICATIONSruntime requirement.
Utilities for WindowInfoTracker and WindowWidthSizeClass.
DevicePosturestate flow (Tabletop, LargeScreen, Normal) to effortlessly adapt layouts when users fold or unfold their devices.
- 3D Glassmorphism Launcher Icon: A state-of-the-art launcher experience.
- Neon Glowing UI: Custom-crafted neon icons optimized for modern dark themes.
NeoMotion is highly modular. You only include what you need.
Step 1: Add JitPack to your settings.gradle.kts:
dependencyResolutionManagement {
repositories {
google()
mavenCentral()
maven { url = uri("https://jitpack.io") }
}
}Step 2: Add the modules you need to your build.gradle.kts:
dependencies {
// Shared motion math, interpolators, and haptics
implementation("com.github.Ansarii.neomotion:core:1.0.0")
// Predictive back morphing transitions
implementation("com.github.Ansarii.neomotion:morphback:1.0.0")
// API 36 Notification.ProgressStyle wrappers
implementation("com.github.Ansarii.neomotion:livejourney:1.0.0")
// Foldable and adaptive layout utilities
implementation("com.github.Ansarii.neomotion:adaptivemotion:1.0.0")
}Check out the :demo-app module to see these features in action. It includes:
- Feed list to detail Shared Element transition that unwinds realistically as you swipe back.
- A Live Journey Simulation: A 30-second realistic deployment journey showing in-app progress perfectly synced to a system notification (Lock screen & Status Bar).
- Identity & Playground: Real-world entry points for biometric login patterns and gesture tuning sandbox.
NeoMotion follows a strict MVVM Model:
- Presentation Layer: Lean Composables (
MorphBackBox). No complex UI state calculations. - Domain Layer: Pure Kotlin mathematics (
NeoInterpolators) handling gesture commits, cancel thresholds, and visual lerping. - Infrastructure Layer:
LiveJourneyNotificationManagerabstracts awaySDK_INTversion checks andProgressStyleimplementation securely.
Pioneering next-gen Android experiences.
- Website: neoninnovationlab.com
- Contact: hello@neoninnovationlab.com
Apache License 2.0
