do - Dependency Injection is a lightweight dependency injection toolkit for Go that implements the DI pattern using the language’s generics system to provide strong type safety and minimal runtime overhead. The library offers a service container that allows developers to register, resolve, and manage application dependencies in a structured and maintainable way. It supports multiple service lifecycles such as eager, lazy, and transient loading, along with circular dependency detection and interface binding. The toolkit is designed to improve modularity, testability, and scalability in Go applications by reducing tight coupling between components. It also includes lifecycle management features like health checks and graceful shutdown handling, making it suitable for production services and microservices. Overall, samber/do delivers a modern, generics-powered alternative to traditional reflection-based DI frameworks in Go.

Features

  • Type-safe dependency injection container
  • Service registration by type or name
  • Lazy eager and transient lifecycles
  • Circular dependency detection
  • Health check and graceful shutdown
  • Dependency graph resolution

Project Samples

Project Activity

See All Activity >

Categories

Libraries

License

MIT License

Follow do - Dependency Injection

do - Dependency Injection Web Site

Other Useful Business Software
Stop Storing Third-Party Tokens in Your Database Icon
Stop Storing Third-Party Tokens in Your Database

Auth0 Token Vault handles secure token storage, exchange, and refresh for external providers so you don't have to build it yourself.

Rolling your own OAuth token storage can be a security liability. Token Vault securely stores access and refresh tokens from federated providers and handles exchange and renewal automatically. Connected accounts, refresh exchange, and privileged worker flows included.
Try Auth0 for Free
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of do - Dependency Injection!

Additional Project Details

Programming Language

Go

Related Categories

Go Libraries

Registered

2026-02-20