Stop Debating. Start Enforcing with Lint Rules
summary
Argues for replacing architecture debates in PRs with executable lint rules written as unit tests using Consist and Kotest, run via Gradle and GitHub Actions; shows rules that enforce view models to extend Jetpack ViewModel, ban view models from taking repository params or importing resources, ensure use cases expose one public function, and catch Retrofit annotation bugs; recommends Detekt/ktlint for style, per-rule baselines for legacy debt, and DI checks for Hilt/Koin. enforce architecture catch bugs pre-test baseline technical debt
AI-written summary · about
chapters (13)
- 0:00Introduction
- 4:17Architectural debate causes
- 7:07Custom lint rules challenges
- 8:12Introducing Consist framework
- 11:23First lint rule
- 14:55Baseline and error messages
- 15:17Enforcing architecture
- 20:12Bug prevention with lint rules
- 23:44Lint rules project structure
- 25:30Automating in CI/CD
- 27:15Enforcement benefits
- 31:05Onboarding gains
- 32:07Resources and closing
related talks
15mClean Code Base: Harnessing the Power of Android Lint and Custom Rules
20mClean Code Base: Harnessing the Power of Android Lint and Custom Rules
29mMaking rules with Lint
24mImprove your code with Lint checks for Kotlin
21mMastering Code Quality: A Deep Dive into Custom Linting for Android Developers
46mLint for Life: Your Customizable Guard On the Go
37mFirst Do No Harm
42mArchitecture Round Table
