Skip to content
/ wire Public
forked from google/wire

Compile-time Dependency Injection for Go

License

Notifications You must be signed in to change notification settings

go-orb/wire

This branch is 2 commits ahead of google/wire:main.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

b449f25 · Feb 23, 2025
Feb 7, 2024
Feb 23, 2025
Feb 23, 2025
Feb 23, 2025
Feb 23, 2025
Feb 25, 2019
Feb 25, 2019
Aug 30, 2021
Jan 7, 2019
Nov 13, 2018
Aug 30, 2021
Jan 7, 2019
Nov 13, 2018
Feb 23, 2025
Feb 23, 2025
Feb 7, 2024
Feb 23, 2025

Repository files navigation

Wire: Automated Initialization in Go

Build Status godoc Coverage

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.

Installing

Install Wire by running:

go install github.com/go-orb/wire/cmd/wire@latest

and ensuring that $GOPATH/bin is added to your $PATH.

Documentation

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.

This project is covered by the Go Code of Conduct.

About

Compile-time Dependency Injection for Go

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 95.6%
  • Shell 4.4%