A full-screen negative screen (负一屏) alternative for Android, built with Jetpack Compose + Kotlin + Material Design 3.
| Main Screen | Sidebar | About |
|---|---|---|
![]() |
![]() |
![]() |
- Full-screen negative screen replacement — a clean, gesture-driven alternative to the stock Android sidebar
- Shizuku / Root support — elevated privileges for deeper system integration
- Jetpack Compose + Material Design 3 — modern, fluid UI
- Custom sidebar apps — pick and arrange the apps you want
- Media listener service — show now-playing info on the negative screen
- Custom quick links — configurable shortcut buttons
- Multi-language support — English + Chinese (more languages welcome!)
| Layer | Library |
|---|---|
| UI | Jetpack Compose (BOM 2024.12.01) + Material Design 3 |
| Language | Kotlin 2.0.21 |
| DI | Hilt 2.51.1 |
| Database | Room 2.6.1 |
| Image Loading | Coil 3.0.4 |
| Preferences | DataStore Preferences 1.1.1 |
| System Access | Shizuku API 13.1.5 |
| Navigation | Compose Navigation 2.8.5 |
Min SDK: 28 (Android 9) | Target SDK: 35 | Compile SDK: 35
- Android Studio Hedgehog or newer
- JDK 11+
- Android SDK Platform 35 installed
- (Optional) Shizuku installed on device for full functionality
# Clone the repo
git clone https://github.com/ColdP/EdgeFlow.git
cd EdgeFlow
# Build debug APK
./gradlew assembleDebugThe APK will be at app/build/outputs/apk/debug/app-debug.apk.
- Install the APK on your Android device
- Grant Display over other apps permission
- (Recommended) Install and pair Shizuku for full feature access
- Open EdgeFlow — configure trigger gestures and sidebar content
- Swipe from the edge to invoke
EdgeFlow/
├── app/
│ ├── src/main/
│ │ ├── java/btm/m/edgeflow/ # Kotlin source code
│ │ ├── res/ # Resources (XML, images, etc.)
│ │ └── AndroidManifest.xml
│ ├── build.gradle.kts
│ └── proguard-rules.pro
├── gradle/
├── build.gradle.kts
├── settings.gradle.kts
├── README.md # English documentation
├── README_zh.md # 中文文档
└── LICENSE
Please read CONTRIBUTING.md before submitting a PR.
- Fork the repo
- Create a feature branch (
git checkout -b feat/your-feature) - Commit your changes (
git commit -m "feat: add your feature") - Push to the branch (
git push origin feat/your-feature) - Open a Pull Request
GNU General Public License v3.0
- GitHub: github.com/btm-m/EdgeFlow
- Developer's Site: btm-m.site
- Blog: btm-m.live
Made with love by btm_m



