Dependency injection helps you organize the pieces of your Go program. The dig library from Uber is a tool that builds an object graph when your application starts. It uses reflection to find out what your constructors need and provide them automatically.
You can register a constructor with Provide. Then you can call Invoke to get a service from the container. The container makes sure each object is created only once and shared across your code.
You will also learn about named values, value groups, optional dependencies, scopes, and decoration. These features let you wire complex applications cleanly.
Global
mkdir -p ~/.claude/skills/golang-uber-digProject
mkdir -p .claude/skills/golang-uber-digSource Repository
Lark Openapi Explorerlarksuite/cli
Discover and call native Lark OpenAPIs not covered by existing CLI commands
Supabasesupabase/agent-skills
Add a database auth and APIs to your app with Supabase
Convex Quickstartget-convex/agent-skills
Rapidly set up a Convex backend for new or existing apps with one command
Convex Create Componentget-convex/agent-skills
Create reusable Convex components with isolated tables and clear APIs
Design An Interfacemattpocock/skills
Generate many different interface designs and pick the best one
Notion Apiintellectronica/agent-skills
Automate your Notion workspace with simple API calls
Convexget-convex/agent-skills
Use this router to find the perfect Convex skill for your task
Firecrawl Build Scrapefirecrawl/skills
Extract clean web content from a single URL quickly and reliably