square/anvil
A Kotlin compiler plugin to make dependency injection with Dagger 2 easier. observed · 2026-08-28
Health v2 · maintenance only
77/100
- Activity 98
- Release rhythm 38
- Longevity 100
How is this computed?
round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-03. Adoption (stars, forks) is never an input.
- gap_med: 63.5
- age_days: 2275
- days_rel: 335
- days_push: 15
- n_releases_24m: 5
Adoption not part of the score
1402 stars · 91 forks observed · 2026-08-28
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-30, confidence not recorded
Anvil is a Kotlin compiler plugin and Gradle plugin that simplifies dependency injection with Dagger 2 by automatically merging Dagger modules and component interfaces. It is now in maintenance mode, supporting only the K1 compiler with development ending when K2 becomes required.
Use cases
- automatically merge Dagger modules into a component without listing them manually
- avoid manually extending component interfaces in multi-module Android apps
- reduce boilerplate in Dagger dependency injection setup
- contribute modules and interfaces to scoped Dagger components across Gradle modules
- generate Dagger component annotations at compile time
When to avoid
- you are using or migrating to the K2 Kotlin compiler, since Anvil development ends there
- you are starting a new project and can choose a DI framework without Dagger boilerplate
- you need a solution with active long-term support
Facets
library · maturity maintenance
compiler build-tool plugin-system developer-tools programming-languages android-tools jvm kotlin-compiler-plugin dagger2 dependency-injection code-generation android gradle
1 source
- readme: https://github.com/square/anvil · fetched 2026-08-28 · 3f458bf63289
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| square/anvil | main | 77 |
For agents
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem