@clsx524/nx-go
v3.2.1
Published
Nx plugin to use Go in a Nx Workspace
Downloads
1
Readme
Go Nx plugin
First-class support of Go in a Nx workspace
✨ Features
- Generate Go applications and libraries in seconds within your Nx workspace
- Execute, build, format and test projects with a customizable configuration
- Efficient caching and dependency graph tools for Go projects
- Use official Go commands in the background
🚀 Getting started
You need to have a stable version of Go installed on your machine. And.. you are ready!
Generate a Nx workspace with Go support
npx create-nx-workspace go-workspace --preset=@clsx524/nx-go
Add to an exisiting workspace
nx add @clsx524/nx-go
Migrate to latest version
nx migrate @clsx524/nx-go
Don't want to use a multi-module Go workspace?
The plugin configures a multi-module Go workspace by default, to simplify project management and improve the quality of the Nx graph. If you don't want to take advantage of this feature, you can use generator convert-to-one-mod
after the plugin installation. Generators will automatically adapt to your configuration.
nx g @clsx524/nx-go:convert-to-one-mod
📖 Generators & executors
Generators
application
: Generate a Go applicationlibrary
: Generate a Go library
Executors
build
: Build a Go projectgenerate
: Generate code using Golint
: Format and lint a Go projectserve
: Run a Go applicationtest
: Run tests of a Go projecttidy
: Ensures go.mod file matches a project source code
[!TIP] You can use
nx list @clsx524/nx-go
to see list capabilities.
Want to try out these capabilities quickly? Visit our playground!
🧩 Compatibility
| nx-go version | Nx version | |---------------|--------------| | 3.x | 17.x to 19.x | | 2.x | 13.x to 16.x | | 1.x | < 13.x |
This plugin is only tested on stable versions of Go, older versions does not receive support. However, you can expect a fair degree of compatibility. Please note that multi-module Go workspaces require Go 1.18 or later.
Contributors
Licensed under MIT