When you build a Go application you often need to read settings from different places. The spf13/viper library helps you collect these settings from flags, environment variables, configuration files, and defaults. It uses a fixed order called layered precedence to decide which source wins.
You can bind command line flags to viper keys. Then the program checks flags first, then environment variables, then config files, and finally defaults. This makes it easy to override settings without changing code. The library also supports automatic environment variable mapping and hot reloading of config files.
Many Go projects use viper alongside cobra for command line tools. Knowing the right patterns prevents common mistakes such as forgetting to handle missing config files.
Global
mkdir -p ~/.claude/skills/golang-spf13-viperProject
mkdir -p .claude/skills/golang-spf13-viperSource 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
Design An Interfacemattpocock/skills
Generate many different interface designs and pick the best one
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
Convexget-convex/agent-skills
Use this router to find the perfect Convex skill for your task
Firebase Remote Config Basicsfirebase/agent-skills
Change your app's behavior instantly without a new update
Notion Apiintellectronica/agent-skills
Automate your Notion workspace with simple API calls