https://github.com/go-autowire/autowire
🔌 Go framework for dependency injection.
https://github.com/go-autowire/autowire
dependency-injection dependency-injection-framework dependency-injection-pattern go golang golang-application golang-library golang-package initialization
Last synced: 5 months ago
JSON representation
🔌 Go framework for dependency injection.
- Host: GitHub
- URL: https://github.com/go-autowire/autowire
- Owner: go-autowire
- License: mit
- Created: 2020-11-21T18:19:55.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2023-03-13T12:24:41.000Z (over 3 years ago)
- Last Synced: 2024-06-20T01:57:06.769Z (almost 2 years ago)
- Topics: dependency-injection, dependency-injection-framework, dependency-injection-pattern, go, golang, golang-application, golang-library, golang-package, initialization
- Language: Go
- Homepage: https://pkg.go.dev/github.com/go-autowire/autowire
- Size: 63.5 KB
- Stars: 6
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# 🔌 autowire [![GoDoc][doc-img]][doc] [![Github release][release-img]][release] [![Go Report Card][report-card-img]][report-card]
[doc-img]: http://img.shields.io/badge/GoDoc-Reference-blue.svg
[doc]: https://godoc.org/github.com/go-autowire/autowire
[release-img]: https://img.shields.io/github/release/go-autowire/autowire.svg
[release]: https://github.com/go-autowire/autowire
[report-card-img]: https://goreportcard.com/badge/github.com/go-autowire/autowire
[report-card]: https://goreportcard.com/report/github.com/go-autowire/autowire
Autowire is reflection based dependency-injection library for Golang.
This README is in working in progress state.
## Installation
The whole project build with go modules.
To get the latest version, use go1.16+ and fetch it using the go get command. For example:
```bash
go get github.com/go-autowire/autowire
```
To get the specific version, use go1.16+ and fetch it using the go get command. For example:
```bash
go get github.com/go-autowire/autowire@v1.0.6
```
## Documentation
### Overview
Autowire is a simple golang module that automatically connects components using dependency injection. Autowire works using Go's reflection package and struct field tags. Dependencies inside the components should be annotated with "autowire" tag.
### Quick Start