Wire was archived by an automatic process because it was not being maintained. Unfortunately, it's true that there is no one maintaining wire, and we should make this clear in the README before re-archiving.
64 lines
1.9 KiB
Markdown
64 lines
1.9 KiB
Markdown
# Wire: Automated Initialization in Go
|
|
|
|
[](https://github.com/google/wire/actions)
|
|
[][godoc]
|
|
|
|
> [!WARNING]
|
|
> This project is no longer maintained.
|
|
>
|
|
> If you wish to update or extend wire, please do so in a fork.
|
|
|
|
Wire is a code generation tool that automates connecting components using
|
|
[dependency injection][]. Dependencies between components are represented in
|
|
Wire as function parameters, encouraging explicit initialization instead of
|
|
global variables. Because Wire operates without runtime state or reflection,
|
|
code written to be used with Wire is useful even for hand-written
|
|
initialization.
|
|
|
|
For an overview, see the [introductory blog post][].
|
|
|
|
[dependency injection]: https://en.wikipedia.org/wiki/Dependency_injection
|
|
[introductory blog post]: https://blog.golang.org/wire
|
|
[godoc]: https://godoc.org/github.com/google/wire
|
|
[travis]: https://travis-ci.com/google/wire
|
|
|
|
## Installing
|
|
|
|
Install Wire by running:
|
|
|
|
```shell
|
|
go install github.com/google/wire/cmd/wire@latest
|
|
```
|
|
|
|
and ensuring that `$GOPATH/bin` is added to your `$PATH`.
|
|
|
|
## Documentation
|
|
|
|
- [Tutorial][]
|
|
- [User Guide][]
|
|
- [Best Practices][]
|
|
- [FAQ][]
|
|
|
|
[Tutorial]: ./_tutorial/README.md
|
|
[Best Practices]: ./docs/best-practices.md
|
|
[FAQ]: ./docs/faq.md
|
|
[User Guide]: ./docs/guide.md
|
|
|
|
## Project status
|
|
|
|
As of version v0.3.0, Wire is *beta* and is considered feature complete. It
|
|
works well for the tasks it was designed to perform, and we prefer to keep it
|
|
as simple as possible.
|
|
|
|
We'll not be accepting new features at this time, but will gladly accept bug
|
|
reports and fixes.
|
|
|
|
## Community
|
|
|
|
For questions, please use [GitHub Discussions](https://github.com/google/wire/discussions).
|
|
|
|
This project is covered by the Go [Code of Conduct][].
|
|
|
|
[Code of Conduct]: ./CODE_OF_CONDUCT.md
|
|
[go-cloud mailing list]: https://groups.google.com/forum/#!forum/go-cloud
|