Dagger is a dependency injection library, which uses code generation and annotations. It is used to manage dependencies, which makes code easier to test and maintain.