upvote
Make sure you have a run of govulncheck [1] somewhere in your stack. It works OK as a commit hook, it runs quickly enough, but it can be put anywhere else as well, of course.

Go isn't immune to supply chain attacks, but it has built in a variety of ways of resisting them, including just generally shorter dependency chains that incorporate fewer whacky packages unless you go searching for them. I still recommend a periodic skim over go.mod files just to make sure nothing snuck in that you don't know what it is. If you go up to "Kubernetes" size projects it might be hard to know what every dependency is but for many Go projects it's quite practical to know what most of them are and get a sense they're probably dependable.

[1]: https://pkg.go.dev/golang.org/x/vuln/cmd/govulncheck - note this is official from the Go project, not just a 3rd party dependency.

reply
> React happily also has 0 dependencies,

Ok, but it has 112 devDependencies, I'm not really sure "0 dependencies" best describes React.

reply
Dev dependencies are not installed when you install the package into your project.

Also I checked how many deps vuejs has, also 0.

reply
Those are not installed.
reply
I'm going almost the same direction, for the same reasons. Golang seems very interesting. Rewriting some hobby projects to get an understanding of the language and ecosystem. I'm on Node/webpack now and don't love where things are going.
reply
Frontend: eh - you could pick something that targets wasm. Definitely a tradeoff with its own headaches.
reply
Rust wasm ecosystem also needs a lot of crates to do anything useful, a lot of them unmaintained.
reply
Try Scala? You only need one 0-dependency library for UI (Laminar), and you're good to go.
reply
Now I imagining it like being outside a concert or other ticketed event: "Crates, who's selling? Who's buying?"
reply
deleted
reply