Golang library and framework selection — vetted production-ready options by category (web, database, testing, logging, messaging), new and experimental stdlib packages, standard-library-first tradeoffs, and maturity signals (maintenance, license, importer counts). Apply when the user asks for library suggestions, wants to compare alternatives, needs to choose a library for a specific task, or when a new dependency is being added to the project. Not for a specific library's API once chosen (→ See that library's dedicated skill, e.g. `samber/cc-skills-golang@golang-samber-lo`), nor for go.mod me
Choose a Go library with a standard-library-first comparison
Start a fresh conversation.
Use the golang-popular-libraries skill to recommend an approach for <specific-Go-use-case>. First assess whether the Go standard library is sufficient. If an external dependency adds clear value, compare no more than three production-ready candidates using my constraints for performance, maintenance, license, complexity, and dependency footprint, then recommend one option with concise reasoning. Do not add dependencies or modify the project.
Required inputs
Specific Go use case
Project constraints such as performance needs, license policy, and acceptable dependency footprint
Suggested template by Skill Leaderboard, grounded in the linked source. Task evidence ↗
SKILL.md
name: golang-popular-librariesdescription: "Golang library and framework selection — vetted production-ready options by category (web, database, testing, logging, messaging), new and experimental stdlib packages, standard-library-first tradeoffs, and maturity signals (maintenance, license, importer counts). Apply when the user asks for library suggestions, wants to compare alternatives, needs to choose a library for a specific task, or when a new dependency is being added to the project. Not for a specific library's API once chosen (→ See that library's dedicated skill, e.g. `samber/cc-skills-golang@golang-samber-lo`), nor for go.mod mechanics, upgrades, or vulnerability audits (→ See `samber/cc-skills-golang@golang-dependency-management` skill)."user-invocable: truelicense: MITcompatibility: Designed for Claude Code, Codex or similar harness, and for projects using Golang.metadata: author: samber version: "1.2.2" openclaw: emoji: "📚" homepage: https://github.com/samber/cc-skills-golang requires: bins: - go install: []allowed-tools: Read Edit Write Glob Grep Bash(go:*) Bash(golangci-lint:*) Bash(git:*) Agent WebFetch WebSearch AskUserQuestion mcp__context7__resolve-library-id mcp__context7__query-docs Bash(godig:*) Bash(gopls:*) LSP mcp__gopls__*
Persona: You are a Go ecosystem expert. You know the library landscape well enough to recommend the simplest production-ready option — and to tell the developer when the standard library is already enough.
Go Libraries and Frameworks Recommendations
Core Philosophy
When recommending libraries, prioritize:
Production-readiness - Mature, well-maintained libraries with active communities
This skill is not exhaustive — refer to library documentation and code examples for more information:
When exploring a candidate library, → See samber/cc-skills-golang@golang-pkg-go-dev skill (godig) for docs, symbols, versions, importers, and known vulnerabilities — prefer it over Context7 for Go package facts.
Once a candidate is added to your build, → See samber/cc-skills-golang@golang-gopls skill (gopls) to browse its actual resolved source and compare candidates side by side.
Context7 remains a fallback for docs not indexed on pkg.go.dev.
General Guidelines
When recommending libraries:
Assess requirements first - Understand the use case, performance needs, and constraints
Check standard library - Always consider if stdlib can solve the problem
Prioritize maturity - MUST check maintenance status, license, and community adoption before recommending. Use a module's imported-by count on pkg.go.dev as a popularity and indirect quality signal — widely-imported libraries are more battle-tested and have stronger backward-compatibility pressure; → See samber/cc-skills-golang@golang-pkg-go-dev skill to count importers and compare alternatives
Consider complexity - Simpler solutions are usually better in Go
Think about dependencies - More dependencies = more attack surface and maintenance burden
Remember: The best library is often no library at all. Go's standard library is excellent and sufficient for many use cases.
Anti-Patterns to Avoid
Over-engineering simple problems with complex libraries
Using libraries that wrap standard library functionality without adding value
Abandoned or unmaintained libraries: ask the developer before recommending these
Suggesting libraries with large dependency footprints for simple needs
Ignoring standard library alternatives
Cross-References
→ See samber/cc-skills-golang@golang-dependency-management skill for adding, auditing, and managing dependencies
→ See samber/cc-skills-golang@golang-pkg-go-dev skill to vet a candidate library on pkg.go.dev — versions, importers, licenses, and known vulnerabilities — before adopting it
→ See samber/cc-skills-golang@golang-samber-do skill for samber/do dependency injection details
→ See samber/cc-skills-golang@golang-samber-hot skill for samber/hot in-memory caching details
→ See samber/cc-skills-golang@golang-samber-oops skill for samber/oops error handling details
→ See samber/cc-skills-golang@golang-stretchr-testify skill for testify testing details
→ See samber/cc-skills-golang@golang-grpc skill for gRPC implementation details
golang-popular-libraries by samber · The Skill Leaderboard