{"id":13511675,"url":"https://github.com/golang/tools","last_synced_at":"2025-05-12T05:32:39.489Z","repository":{"id":23771104,"uuid":"27146054","full_name":"golang/tools","owner":"golang","description":"[mirror] Go Tools","archived":false,"fork":false,"pushed_at":"2025-05-09T19:29:51.000Z","size":50752,"stargazers_count":7667,"open_issues_count":96,"forks_count":2302,"subscribers_count":289,"default_branch":"master","last_synced_at":"2025-05-12T02:45:41.228Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://golang.org/x/tools","language":"Go","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/golang.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2014-11-25T21:07:26.000Z","updated_at":"2025-05-11T10:59:50.000Z","dependencies_parsed_at":"2024-02-05T19:31:07.138Z","dependency_job_id":"f671d76c-bad5-43fb-bfb7-a78f3e1970b7","html_url":"https://github.com/golang/tools","commit_stats":{"total_commits":8583,"total_committers":511,"mean_commits":16.79647749510763,"dds":0.8304788535477106,"last_synced_commit":"018d3b2768ced9f36e90baeb2a542c813dfc28ef"},"previous_names":[],"tags_count":271,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/golang%2Ftools","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/golang%2Ftools/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/golang%2Ftools/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/golang%2Ftools/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/golang","download_url":"https://codeload.github.com/golang/tools/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253672733,"owners_count":21945482,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-01T03:01:05.162Z","updated_at":"2025-05-12T05:32:39.455Z","avatar_url":"https://github.com/golang.png","language":"Go","funding_links":[],"categories":["Go","Misc","Code Analysis"],"sub_categories":["Routers"],"readme":"# Go Tools\n\n[![PkgGoDev](https://pkg.go.dev/badge/golang.org/x/tools)](https://pkg.go.dev/golang.org/x/tools)\n\nThis repository provides the `golang.org/x/tools` module, comprising\nvarious tools and packages mostly for static analysis of Go programs,\nsome of which are listed below.\nUse the \"Go reference\" link above for more information about any package.\n\nIt also contains the\n[`golang.org/x/tools/gopls`](https://pkg.go.dev/golang.org/x/tools/gopls)\nmodule, whose root package is a language-server protocol (LSP) server for Go.\nAn LSP server analyses the source code of a project and\nresponds to requests from a wide range of editors such as VSCode and\nVim, allowing them to support IDE-like functionality.\n\n\u003c!-- List only packages of general interest below. --\u003e\n\nSelected commands:\n\n- `cmd/goimports` formats a Go program like `go fmt` and additionally\n  inserts import statements for any packages required by the file\n  after it is edited.\n- `cmd/callgraph` prints the call graph of a Go program.\n- `cmd/digraph` is a utility for manipulating directed graphs in textual notation.\n- `cmd/stringer` generates declarations (including a `String` method) for \"enum\" types.\n- `cmd/toolstash` is a utility to simplify working with multiple versions of the Go toolchain.\n\nThese commands may be fetched with a command such as\n```\ngo install golang.org/x/tools/cmd/goimports@latest\n```\n\nSelected packages:\n\n- `go/ssa` provides a static single-assignment form (SSA) intermediate\n  representation (IR) for Go programs, similar to a typical compiler,\n  for use by analysis tools.\n\n- `go/packages` provides a simple interface for loading, parsing, and\n  type checking a complete Go program from source code.\n\n- `go/analysis` provides a framework for modular static analysis of Go\n  programs.\n\n- `go/callgraph` provides call graphs of Go programs using a variety\n  of algorithms with different trade-offs.\n\n- `go/ast/inspector` provides an optimized means of traversing a Go\n  parse tree for use in analysis tools.\n\n- `go/cfg` provides a simple control-flow graph (CFG) for a Go function.\n\n- `go/gcexportdata` and `go/gccgoexportdata` read and write the binary\n  files containing type information used by the standard and `gccgo` compilers.\n\n- `go/types/objectpath` provides a stable naming scheme for named\n  entities (\"objects\") in the `go/types` API.\n\nNumerous other packages provide more esoteric functionality.\n\n\u003c!-- Some that didn't make the cut:\n\ngolang.org/x/tools/benchmark/parse\ngolang.org/x/tools/go/ast/astutil\ngolang.org/x/tools/go/types/typeutil\ngolang.org/x/tools/playground\ngolang.org/x/tools/present\ngolang.org/x/tools/refactor/importgraph\ngolang.org/x/tools/refactor/rename\ngolang.org/x/tools/refactor/satisfy\ngolang.org/x/tools/txtar\n\n--\u003e\n\n## Contributing\n\nThis repository uses Gerrit for code changes.\nTo learn how to submit changes, see https://go.dev/doc/contribute.\n\nThe git repository is https://go.googlesource.com/tools.\n\nThe main issue tracker for the tools repository is located at\nhttps://go.dev/issues. Prefix your issue with \"x/tools/(your\nsubdir):\" in the subject line, so it is easy to find.\n\n### JavaScript and CSS Formatting\n\nThis repository uses [prettier](https://prettier.io/) to format JS and CSS files.\n\nThe version of `prettier` used is 1.18.2.\n\nIt is encouraged that all JS and CSS code be run through this before submitting\na change. However, it is not a strict requirement enforced by CI.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgolang%2Ftools","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgolang%2Ftools","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgolang%2Ftools/lists"}