Introduction
GoNx is an Nx plugin for Go development. It
brings the benefits of Nx — caching, affected-task detection, project graph
visualization, and generators — to Go projects without requiring hand-written
project.json targets.
What gonx does
Section titled “What gonx does”gonx infers test, lint, tidy, and generate targets automatically from every
go.mod in your workspace, plus build and serve for applications. It builds
the Nx project graph by
parsing Go source files with tree-sitter to
extract import statements and resolve them to Nx projects — no Go toolchain
required for graph computation. It also ships generators for scaffolding
applications, libraries, and Go Blueprint
projects with web frameworks and database drivers.
Who it’s for
Section titled “Who it’s for”gonx is for teams and individuals who already use Nx (or want to) and have Go projects in their workspace. It is a fork of @nx-go/nx-go, modernized for Nx 23 with inferred tasks and a tree-sitter-based project graph. If you are migrating from nx-go, see the migration guide.
Where to go next
Section titled “Where to go next”- New to gonx? Start with the quick start.
- Adding gonx to an existing workspace? See install gonx.
- Want a step-by-step walkthrough? Read create your first Go project.
- Curious how the project graph works? See how static analysis works.