PlugBrain is an app that encourages regular breaks from distracting apps by blocking access at scheduled intervals. To regain access, you’ll need to solve a math challenge that adjusts in difficulty: the more frequently you use the apps, the harder the challenges become, but the longer you stay away, the easier they get.
- Blocks distracting apps
- Unblock apps by solving math challenges
- Difficulty increases with frequent use, decreases with focus
- No tracking, no ads
- No internet required
- Grant all required permissions
- Select distracting apps
- Choose your focus frequency
- Select minimum starting difficulty
- Stay focused ;)
Want to contribute? Follow these quick steps:
- Fork this repository
- Clone your fork
- Create a new branch
- Make your changes
- Commit your changes
- Push to the branch
- Open a pull request
- Make sure the CI pass
PlugBrain is built using modern Android libraries and tools:
- 100% Kotlin
- Jetpack Compose as UI toolkit
- Kotlin Coroutines & Flow for asynchronous.
- Koin for Dependency injection
- Architecture
- MVVM Architecture (Declarative View - ViewModel - Model)
- Repository pattern
- DataStore – Storage for user preferences
- Lifecycle – ViewModel and lifecycle-aware components
- Material 3 – Material Design components
- Coil – Image loading for Android
- UsageStatsManager for app usage tracking
- JUnit – Unit testing
- MockK – Mocking library
- Timber – Logging
- Ktlint – Kotlin code style checking
- GitHub Actions – CI/CD for builds, tests, and releases