# Go Lsp > - Implementation references --- # Source: https://github.com/go-language-server/protocol/blob/main/docs/implementation-references.md # Implementation references - [Implementation references](#implementation-references) - [Go](#go) - [Node.js](#nodejs) - [Rust](#rust) ## Go - [tools/internal/lsp: golang/tools](https://github.com/golang/tools/tree/master/internal/lsp) - [sourcegraph/go-langserver: Go language server to add Go support to editors and other tools that use the Language Server Protocol (LSP)](https://github.com/sourcegraph/go-langserver) - [sourcegraph/go-lsp: Go types for the messages used in the Language Server Protocol.](https://github.com/sourcegraph/go-lsp) ## Node.js - [Microsoft/vscode-languageserver-node: Language server protocol implementation for VSCode.](https://github.com/Microsoft/vscode-languageserver-node) ## Rust - [autozimu/LanguageClient-neovim: Language Server Protocol (LSP) support for vim and neovim.](https://github.com/autozimu/LanguageClient-neovim/tree/next) - [rust-lang-nursery/rls: Repository for the Rust Language Server (aka RLS)](https://github.com/rust-lang-nursery/rls) - [gluon-lang/lsp-types: Types for communicating with a language server](https://github.com/gluon-lang/lsp-types) - [RustDT/RustLSP: A Language Server Protocol implementation in Rust](https://github.com/RustDT/RustLSP)