npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

create-packkit-go

v0.5.0

Published

Scaffold modern Go projects — go.mod modules, idiomatic layout, table tests — from a CLI or the browser. Packkit's Go generator.

Readme

create-packkit-go 🐹📦

Scaffold a modern Go project — a go.mod module, idiomatic layout, table-style tests — from a CLI (and soon the browser). Packkit's Go sibling.

npm CI Configure on the web License: MIT

Prefer clicking to typing? Configure a Go project in the browser → — pick options, preview the tree, download a zip (or copy the command). No install needed.

Like create-packkit and create-packkit-py, this is a JavaScript generator — but its output is an idiomatic Go project. The whole Packkit engine pattern (a deterministic core, presets, a browser configurator, --schema, MCP, and a packkit.json provenance file) carries over, while you get standard Go: a go.mod module, a package with a doc comment, and go test-ready table tests. No Go toolchain is needed to generate — only to run what's generated.

Quick start

npx create-packkit-go go-lib my-lib
# then:
cd my-lib && go test ./... && go build ./...

Every generated project is gofmt-clean and passes go vet, go build, and go test out of the box — the same guarantee create-packkit makes for JS/TS.

Presets

| Preset | Alias | What you get | | ------------ | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | go-lib | lib | Library — go.mod module, a documented package with an exported function, a table test, README, .gitignore. | | go-cli | cli | Command — everything in go-lib plus a cmd/<name>/main.go that wires the package to flags (logic stays testable in the package). | | go-worker | worker | Background worker — a testable Handle seam, a runner that drains on SIGTERM and exits 0, JSON logs, retries + poison hook, distroless Dockerfile. | | go-service | service, svc | HTTP service — net/http server on $PORT, / + /healthz, JSON logs, graceful shutdown, an httptest handler test + a live-server shutdown test, distroless Dockerfile. |

Each target emits its own provider-neutral deployment contract, exactly as the JS and Python generators do — go-service emits the language-neutral service contract (runtime: "go-1.x"), the same contract shape a Node or Python HTTP service uses.

Options

--name <name>            Project name (or a positional, in either slot)
--module <path>          go.mod module path (default: sanitized name)
--description <text>
--author "<name> <email>"
--license <MIT|Apache-2.0|ISC|none>   (default: MIT)
--go <1.x>               Minimum Go version (default: 1.23)
--release <none|goreleaser>  GoReleaser config + tag-triggered release workflow (default: none)
--here                   Scaffold into the current directory
--no-git                 Skip initializing a git repository
--force                  Overwrite existing files

Where it fits

create-packkit-go is a separate package, not a fork of create-packkit's core. It implements the shared @packkit/core PackkitGenerator contract — the same interface the JS and Python generators implement — with zero core changes. Go-specific concerns (the go.mod manifest diff that powers baseline-aware upgrade) stay in this package; the core stays language-neutral. The shared packkit-mcp server can front all three generators, and the browser configurator can host all three engines.

Requirements

Node.js >= 20 to run the generator. Go (any recent version, go.mod floor 1.23) to build and test what it produces.

License

MIT © DanMat