go-dev

Solid

Opinionated Go development setup with golangci-lint v2 + gofumpt + gotestsum + golang-migrate + just. Use when creating new Go projects, setting up linting/formatting/testing, configuring CI/CD pipelines, writing Justfiles, or migrating from Makefile-only workflows. Triggers on "go project", "go mod init", "golangci-lint", "gofumpt", "gotestsum", "go test setup", "justfile go", "go migration", "go ci pipeline", "go lint setup", "go fmt", "go coverage".

AI & Automation 31 stars 2 forks Updated 3 days ago MIT

Install

View on GitHub

Quality Score: 85/100

Stars 20%
50
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
80
License 10%
100
Description 5%
100

Skill Content

# Go Development Stack Opinionated, modern Go development setup. One tool per concern, zero overlap. ## When to Use - Starting a new Go project from scratch - Adding linting, formatting, or testing infrastructure - Setting up CI/CD for a Go service or library - Creating a Justfile to replace a Makefile - Adding database migration tooling - Migrating from scattered gofmt/govet/staticcheck invocations to a unified setup ## The Stack | Tool | Version | Role | Replaces | |------|---------|------|----------| | **Go** | 1.26+ | Language, toolchain, `go mod` | - | | **golangci-lint** | v2.11+ | Meta-linter (100+ linters + formatters + `fmt` command) | gofmt, govet, staticcheck, errcheck run separately | | **gofumpt** | v0.9+ | Strict formatter (superset of gofmt, 17+ extra rules) | gofmt | | **gotestsum** | v1.13+ | Test runner with readable output, watch mode, JUnit XML | Raw `go test` | | **just** | latest | Task runner | Makefile | | **golang-migrate** | v4.19+ | DB migrations (CLI + library + `embed.FS`) | Manual SQL scripts | ## Quick Start: New Project ```bash # 1. Create module mkdir myapp && cd myapp go mod init github.com/yourorg/myapp # 2. Scaffold directories mkdir -p cmd/myapp internal migrations # 3. Install tools go install github.com/golangci/golangci-lint/v2/cmd/golangci-lint@latest go install mvdan.cc/gofumpt@latest go install gotest.tools/gotestsum@latest go install -tags 'postgres' github.com/golang-migrate/migrate/v4/cmd/migrate@latest # 4. Track tools ...

Details

Author
tenequm
Repository
tenequm/skills
Created
8 months ago
Last Updated
3 days ago
Language
Python
License
MIT

Integrates with

Similar Skills

Semantically similar based on skill content — not just same category

AI & Automation Listed

environment

Development environment setup, tool locations, and dependency installation for the flight-path Go project. Use when setting up the project, installing tools, troubleshooting PATH issues, or asking about Go/Node versions. Do NOT use for runtime troubleshooting, workflow guidance, or CI pipeline questions.

1 Updated 3 days ago
AndriyKalashnykov
Code & Development Listed

go-dev

Go development with toolchain-first verification workflow. Use whenever the user (1) writes, modifies, debugs, or reviews Go code, (2) works with go.mod, go.sum, or Go module dependencies, (3) writes or runs Go tests, benchmarks, or fuzz tests, (4) mentions go doc, go vet, go fix, go test, go build, go mod, gofmt, staticcheck, golangci-lint, govulncheck, or pprof, (5) asks about Go error handling (errors.Is/As/AsType/Join), concurrency (goroutines, channels, sync, context), interfaces, or package design, (6) encounters Go compiler errors, test failures, or race conditions, (7) profiles Go code for performance or works with PGO, (8) asks about Go best practices, code review, or idiomatic Go, (9) works with files ending in .go or _test.go, (10) wants to modernize Go code to 1.21-1.26 features. Trigger this skill proactively when the user is working in a Go codebase even if they do not explicitly ask for Go help - the toolchain-first workflow (verify APIs with go doc before coding, run go vet after) catches bugs

0 Updated 3 days ago
pszypowicz
Code & Development Listed

golang

Idiomatic Go guidance for writing and reviewing Go code - style, naming, MixedCaps, GoDoc comments, error handling (%w, errors.Is/As, sentinel errors), goroutines/channels/select/context, safety (nil maps, append aliasing, type assertions), structs/interfaces, generics, table-driven tests, testify, golangci-lint, go.mod dependency management, project layout, slog/Prometheus/OpenTelemetry observability, and gRPC. Use when writing, reviewing, or refactoring Go (.go) code, editing go.mod/go.sum, running go test or golangci-lint, debugging goroutine leaks or races, or making Go design decisions. For the samber/* library stack (lo, oops, do, mo, slog-*, hot, ro) use gostack instead.

2 Updated today
vanducng