An Android auto-clicker application built with Kotlin, Jetpack Compose, and modern Android architecture.
The app follows a clean, domain-driven architecture:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β UI Layer β
β (Jetpack Compose Screens, Navigation, Overlays) β
βββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββ
β
βββββββββββββββββββββββββββΌββββββββββββββββββββββββββββββββ
β Domain Layer β
β (Scenarios, Actions, Click/Swipe/Pause definitions) β
βββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββ
β
βββββββββββββββββββββββββββΌββββββββββββββββββββββββββββββββ
β Engine Layer β
β (ActionExecutor, Engine orchestration) β
βββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββ
β
βββββββββββββββββββββββββββΌββββββββββββββββββββββββββββββββ
β Accessibility Service β
β (dispatchGesture for clicks/swipes) β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
| Permission | Purpose |
|---|---|
SYSTEM_ALERT_WINDOW |
For floating overlay control panel |
BIND_ACCESSIBILITY_SERVICE |
For gesture dispatch (clicks/swipes) |
com.example.clicka/
βββ actions/ # Action definitions (Click, Swipe, Pause)
βββ base/ # Base classes and utilities
βββ data/ # Database, DAOs, repositories
βββ domain/ # Domain models (Scenario, Action)
βββ engine/ # Engine & ActionExecutor
βββ navigation/ # Navigation components
βββ screens/ # Compose UI screens
βββ services/
β βββ accessibilty/ # Accessibility service
β βββ overlayservice/ # Floating overlay service
βββ ui/ # UI components & themes
git clone https://github.com/IndiphileMenziwa/Clicka.git
Open in Android Studio (Hedgehog or newer recommended)
Sync Gradle dependencies
# Debug build
./gradlew assembleDebug
# Release build
./gradlew assembleRelease
AutoClickAccessibilityService - Handles gesture dispatch using Androidβs Accessibility APIOverlayService - Manages the floating control overlayEngine - Orchestrates scenario executionActionExecutor - Executes individual Click/Swipe/Pause actionsContributions are welcome! Please feel free to submit a Pull Request.
This project is for educational purposes.
Made with β€οΈ using Kotlin & Jetpack Compose