Go API Design

Enforces Go package and API design — small exported surfaces, packages named for what they provide, functional options instead of growing constructors, context first, no init side effects, and changes that stay backward compatible. Use when creating or restructuring Go packages, designing an exported API or library, or reviewing a public interface, and when the user mentions package layout, internal/, functional options, breaking changes, semantic import versioning, or asks "how should I structure this package", "is this a good API".

CasLubbers bdc0cb5 5.1 KB Updated

File contents

CasLubbers/code-design-skills/tree/main/skills/go-api-design commit bdc0cb5401

Frequently asked questions

npx skillmds@latest add caslubbers/go-api-design