Skip to content

Latest commit

 

History

History
138 lines (114 loc) · 5.22 KB

File metadata and controls

138 lines (114 loc) · 5.22 KB

gonx - Nx plugin for Go/Golang

MIT commitizen PRs styled with prettier All Contributors


Features

  • Generate Go Applications
    • Customizable Go module setup
    • Well-structured Go code scaffolding
  • Generate Go Libraries
  • Full Nx integration
    • Inferred Tasks: Build, Generate, Tidy, Test, Run, and Lint
    • Cacheable Tasks: Build, Generate, Tidy, Test, and Lint
    • GraphV2 Support
    • Version Actions for Go release
    • Nx Release Publish executor
  • Use official Go commands in the background
  • Dependency detection via tree-sitter static analysis (no Go required)

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=@naxodev/gonx

Add to an existing workspace

nx add @naxodev/gonx

Plugin Options

Configure the plugin in your nx.json:

{
  "plugins": [
    {
      "plugin": "@naxodev/gonx",
      "options": {}
    }
  ]
}
Option Type Default Description
skipGoDependencyCheck boolean false Disable dependency detection entirely

See Dependency Detection for details on how dependencies between Go projects are resolved.

Docs

To read the full documentation, check out the docs site.

Contributors

Thanks goes to these wonderful people (emoji key):

Nacho Vazquez
Nacho Vazquez

🐛 💻 📖 💡 🤔 🧑‍🏫 🚧 📆 👀
Abel Penton
Abel Penton

💻 📖
Wenzel
Wenzel

💻
Miguel
Miguel

💻

Acknowledgements

This project is a fork of nx-go, a plugin for Nx that provides tools for building Go applications. Most credit goes to the original maintainers of nx-go - we've built upon their excellent foundation to modernize the plugin for the latest Nx features.