go-popular-libraries

Recommends vetted Go libraries using stdlib-first evaluation and dependency footprint assessment.

1|2|Updated Nov 25, 2017
One-click install
npx skills add https://github.com/asarchami/dotfiles --skill go-popular-libraries-asarchami
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: go-popular-libraries
Source: https://github.com/asarchami/dotfiles/tree/main/dot_config/opencode/skills/go/go-popular-libraries
Command: npx skills add https://github.com/asarchami/dotfiles --skill go-popular-libraries-asarchami

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Choosing a Go library is a long-term maintenance commitment, and picking abandoned, bloated, or over-engineered dependencies creates security and upkeep burdens. This Skill provides a disciplined selection process so every recommendation is mature, licensed, maintained, and as simple as the task allows. ## Core Features & Use Cases - Stdlib-first evaluation: Checks the Go standard library, including new v2 packages and golang.org/x extensions, before suggesting any external dependency. - Vetted category catalogs: Provides curated libraries for web frameworks, ORMs, testing, logging, messaging, DI, and more, plus development tools like golangci-lint and Delve. - Dependency footprint assessment: Weighs transitive dependencies and flags abandoned or unmaintained libraries before recommending them. - Use Case: When asked which HTTP router or ORM to add to a project, the Skill evaluates whether net/http or database/sql suffices, then recommends a minimal option like Chi or SQLx with justification. ## Quick Start Ask the AI to recommend a Go library for your task, for example: which Go library should I use for structured logging in a high-throughput API?

Frequently Asked Questions about go-popular-libraries

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I choose the right Go library for my project?

Start by checking whether the Go standard library covers your use case, including newer packages like slices, maps, and log/slog. If stdlib falls short, pick the simplest mature library that meets requirements, verify it is maintained and licensed, and assess its transitive dependency footprint.

What Go web framework should I use for a REST API?

Gin and Echo are popular high-performance choices for REST APIs, while Chi is a lightweight idiomatic router that composes with net/http for smaller projects. Fiber suits developers coming from Express.js. Prefer the simplest option that meets your routing and middleware needs.

GORM vs SQLx vs sqlc for Go database access?

GORM is a feature-complete ORM with associations and auto-migrations. SQLx extends database/sql with type-safe query helpers while staying close to SQL. Sqlc generates type-safe Go code from SQL with no runtime reflection. Choose based on how much abstraction your project needs.

Does Go's standard library support structured logging?

Yes, log/slog has provided structured logging in the standard library since Go 1.21 and covers many use cases. For higher-performance needs, Zap and Zerolog offer zero-allocation structured logging, while Logrus is mature but deprecated in favor of structured alternatives.

When should I avoid adding a new Go dependency?

Avoid a dependency when the standard library already covers the need, when a wrapper library adds no real value, or when the library is abandoned or unmaintained. More dependencies mean more attack surface and maintenance burden, so the best library is often no library at all.

How do I check if a Go library is abandoned or unmaintained?

Check the repository's commit activity, open issue responses, and release history before recommending it. The Skill flags abandoned libraries and asks the developer before proceeding, and tools like go-mod-outdated help keep existing dependencies current.