go
Nx plugin to use Go in a Nx workspace.
Features
- Generation of go applications/modules
- Building, packaging, testing, etc your go projects
- Integration with Nx's dependency graph (through nx dep-graph or nx affected:dep-graph): this allows you to visualize the dependencies of any go projects inside your workspace, just like Nx natively does it for JS/TS-based projects!
Getting started
First, make sure you have a Nx Workspace.
Next, install the go plugin:
## using npm
npm install -D @nx-kz/go
## Or using yarn
# yarn add -D @nx-kz/go
## Or using pnpm
# pnpm add -D @nx-kz/go
Generate a go project:
# generating application
nx g @nx-kz/go:app your-app-name
## Or generating library
# nx g @nx-kz/go:lib your-lib-name
Usage
Linting the go project
nx lint your-project-name
By default, lint the go-project using the go vet
command.
Testing the go project
nx test your-project-name
Building the application
nx build your-app-name
By default, this command builds the application using the go build
command, and stores the output in the dist/apps/your-app-name.
Serving the application
nx serve your-app-name
Serves the application using the go run
command.
Using dependency graph
Setup with the following command:
nx g @nx-kz/go:setup
Then run the following command:
nx graph