language-server-protocol

Open-source projects categorized as language-server-protocol

Top 23 language-server-protocol Open-Source Projects

  • theia

    Eclipse Theia is a cloud & desktop IDE framework implemented in TypeScript.

  • Project mention: I can't stand using VSCode so I wrote my own (it wasn't easy) | news.ycombinator.com | 2024-04-21

    As an alternative to VSCode, consider Theia[1].

    Open-source, runs all the VSCode extensions, etc.

    [1] https://theia-ide.org

  • ale

    Check syntax in Vim/Neovim asynchronously and fix files, with Language Server Protocol (LSP) support

  • Project mention: A decent VS Code and Ruby on Rails setup | news.ycombinator.com | 2024-02-21

    I saw no mention of RBS+Steep, the latter providing a LSP. I use it a lot and very much like it, although it's still young and needs love, but it's making good, steady progress! I've been very pleasantly surprised by some of the crazy things Steep can catch, completely statically!

    You appear to be working on projects with Sorbet (which I tried to like but found it fell short in practice, notably outside of the app use case i.e it's mostly useless for gems) so it may be a tall order to try on those. Maybe you can give RBS+Steep a shot on some small project?

    RBS: https://github.com/ruby/rbs

    RBS collection (for those gems that don't ship RBS signatures in `sig`, integrates with bundler): https://github.com/ruby/gem_rbs_collection

    Steep: https://github.com/soutaro/steep

    VS Code: https://github.com/soutaro/steep-vscode

    Sublime Text: https://github.com/sublimelsp/LSP

    Vim (I'm working on it): https://github.com/dense-analysis/ale/pull/4671

  • SurveyJS

    Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.

    SurveyJS logo
  • nvim-lspconfig

    Quickstart configs for Nvim LSP

  • Project mention: JetBrains' unremovable AI assistant meets irresistible outcry | news.ycombinator.com | 2024-02-03

    I suggest looking for blog posts about this, you're gunnuh wanna pick out a plugin manager and stuff. It's kind of like a package manager for neovim. You can install everything manually but usually you manually install a plugin manager and it gives you commands to manage the rest of your plugins.

    These two plugins are the bare minimum in my view.

    https://github.com/nvim-treesitter/nvim-treesitter

    Treesitter gives you much better syntax highlighting based on a parser for a given language.

    https://github.com/neovim/nvim-lspconfig

    This plugin helps you connect to a given language LSP quickly with sensible defaults. You more or less pick your language from here and copy paste a snippet, and then install the relevant LSP:

    https://github.com/neovim/nvim-lspconfig/blob/master/doc/ser...

    For Python you'll want pylsp. For JavaScript it will depend on what frontend framework you're using, I probably can't help you there.

    pylsp itself takes some plugins and you'll probably want them. https://github.com/python-lsp/python-lsp-server

    Best of luck! Happy hacking.

  • Spyder

    Official repository for Spyder - The Scientific Python Development Environment

  • Project mention: Spyder – The Scientific Python Development Environment | news.ycombinator.com | 2023-09-09
  • lsp-mode

    Emacs client/library for the Language Server Protocol

  • Project mention: lsp-mode: Emacs client/library for the Language Server Protocol | /r/planetemacs | 2023-10-15
  • ccls

    C/C++/ObjC language server supporting cross references, hierarchies, completion and semantic highlighting

  • Project mention: Emacs 29.1 Released | news.ycombinator.com | 2023-07-30

    Then it would just have a dependency on Clang, and you couldn't use Emacs at all (since you can't use Clang).

    AFAIK, the only alternative to the clangd language server is ccls: https://github.com/MaskRay/ccls

  • LanguageClient-neovim

    Language Server Protocol (LSP) support for vim and neovim.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • lsp-zero.nvim

    A starting point to setup some lsp related features in neovim.

  • Project mention: jdtls debugging "Could not resolve java executable: Index 1 out of bounds for length 1" | /r/neovim | 2023-11-21

    I'm using lsp-zero and i followed this tutorial https://github.com/VonHeikemen/lsp-zero.nvim/blob/v2.x/doc/md/guides/setup-with-nvim-jdtls.md and i have essentially just copy pasted the code from there into ~/.config/nvim/lua/plugin/jdtls.lua

  • postgres_lsp

    A Language Server for Postgres

  • Project mention: We built our customer data warehouse all on Postgres | news.ycombinator.com | 2024-02-02

    Thank you for turning me on top Cornucopia, it looks awesome. I've used the very similar aiosql in Python, but I hadn't realized there was a Rust analog.

    To tell the truth I've been waiting for postgres_lsp to mature before trying it out, but based on this example [1] I think it does support multiple queries.

    Since it uses a parser extracted from Postgres, the nonstandard syntax would probably trip it up, but there's probably a way to fix that.

    [1] https://github.com/supabase/postgres_lsp/blob/main/example/f...

  • vim-lsp

    async language server protocol plugin for vim and neovim

  • Project mention: Using SonarLint language server in Vim? | /r/vim | 2023-10-27

    Has anybody managed or got an idea how to make SonarLint Language Server work with e.g. vim-lsp?

  • nvim

    The Ultimate NeoVim Config for Colemak Users (by theniceboy)

  • vista.vim

    :cactus: Viewer & Finder for LSP symbols and tags

  • vim-config

    Lean mean Neovim machine, carefully crafted with :heart: Use with latest Neovim.

  • jupyterlab-lsp

    Coding assistance for JupyterLab (code navigation + hover suggestions + linters + autocompletion + rename) using Language Server Protocol

  • typescript-language-server

    TypeScript & JavaScript Language Server

  • Project mention: Helix - Front-End Power | dev.to | 2024-03-12
  • marksman

    Write Markdown with code assist and intelligence in the comfort of your favourite editor.

  • Project mention: Helix - Front-End Power | dev.to | 2024-03-12
  • pylance-release

    Documentation and issues for Pylance

  • Project mention: Open source versus Microsoft: The new rebellion begins | news.ycombinator.com | 2024-04-15

    One of the things that comes to mind here is the fact that the default Python extension for VS Code is, perhaps surprisingly to many, not open source. https://github.com/microsoft/pylance-release

    While it's possible to fork VS Code, it is not possible to fork VS Code and provide a seamless onramp towards a Python editing experience that is fully open source, because users are used to the nuances of the closed-source Pylance experience in VS Code proper. You could use the minified/compiled Pylance plugin in your fork, but you'd have no way to expand its capabilities to new hooks your fork provides. Microsoft's development process would always be able to move faster than a fork, because it could coordinate VS Code internal API development with its internal Pylance team, and could become incompatible with forks at any time.

    It's worth re-reading the quote from J Allard in https://en.wikipedia.org/wiki/Embrace,_extend,_and_extinguis... with this modern example in mind.

    (Also worth mentioning https://github.com/detachhead/basedpyright?tab=readme-ov-fil... which is a heroic effort to derisk this, but it's an uphill battle for sure!)

  • eclipse.jdt.ls

    Java language server

  • Project mention: 2.5 Million Java Developers on Visual Studio Code. Microsoft and Red Hat shares Joint Roadmap for Next 6 Months Together | /r/java | 2023-12-11

    Thanks Eclipse : https://github.com/eclipse-jdtls/eclipse.jdt.ls

  • LSP

    Client implementation of the Language Server Protocol for Sublime Text

  • Project mention: A decent VS Code and Ruby on Rails setup | news.ycombinator.com | 2024-02-21

    I saw no mention of RBS+Steep, the latter providing a LSP. I use it a lot and very much like it, although it's still young and needs love, but it's making good, steady progress! I've been very pleasantly surprised by some of the crazy things Steep can catch, completely statically!

    You appear to be working on projects with Sorbet (which I tried to like but found it fell short in practice, notably outside of the app use case i.e it's mostly useless for gems) so it may be a tall order to try on those. Maybe you can give RBS+Steep a shot on some small project?

    RBS: https://github.com/ruby/rbs

    RBS collection (for those gems that don't ship RBS signatures in `sig`, integrates with bundler): https://github.com/ruby/gem_rbs_collection

    Steep: https://github.com/soutaro/steep

    VS Code: https://github.com/soutaro/steep-vscode

    Sublime Text: https://github.com/sublimelsp/LSP

    Vim (I'm working on it): https://github.com/dense-analysis/ale/pull/4671

  • vscode-intelephense

    PHP intellisense for Visual Studio Code

  • Project mention: A guide on Neovim's LSP client | dev.to | 2024-01-13

    I'm going to use intelephense to show the minimal configuration needed to setup a language server in Neovim.

  • KotlinLanguageServer

    Kotlin code completion, diagnostics and more for any editor/IDE using the Language Server Protocol

  • Project mention: Kotlin is a much better language than Java even with all the new stuff Java has added. | /r/Kotlin | 2023-12-11

    There's a community-made one, but of course as much effort as has been put into it it's not as featureful as JetBrains's own stuff.

  • elixir-ls

    A frontend-independent IDE "smartness" server for Elixir. Implements the "Language Server Protocol" standard and provides debugger support via the "Debug Adapter Protocol"

  • Project mention: Vue 3.3.6 Faster Thanks to WeakMaps | news.ycombinator.com | 2023-10-22

    No. Not even close. But it's getting better.

    There are currently two worth mentioning:

    ElixirLSP: https://github.com/elixir-lsp/elixir-ls

    Elixir tools: https://www.elixir-tools.dev/

    ElixirLSP is the older project, and has been around for a while. It does a lot, but has had sporadic issues over the years. Things like the debugger are a dog to get working, and the server itself will occasionally run into issues where it just doesn't want to work. It's always sort of focused on a subset of language server features, so don't expect much in the way of inline corrections. But it's got the essentials, formatting, basic linting, type hinting, on demand documentation, and primitive reference navigation

    Elixir tools is a new up and comer, written by Mitchell Hanberg. It's aiming to be a more complete lsp, and has plugins in its "ecosystem" for most editors. Features have been arriving rapidly, starting with things like inline corrections and far more reliable linting, and recently growing autocomplete. One of the main selling points is the elixir-tools backend is a self contained binary, so it can mostly work independent of system Elixir/Erlang version, which was a frequent tripping point for ElixirLSP

    Personally I use both at the same time, but plan to move to tools only when it's got all the features I need

  • nvim-navic

    Simple winbar/statusline plugin that shows your current code context

  • Project mention: What's this type of plugin called? (it shows the structure of code) | /r/neovim | 2023-05-30

    This can be done using a statusline plugin like nvim-navic

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020).

language-server-protocol related posts

  • Open source versus Microsoft: The new rebellion begins

    2 projects | news.ycombinator.com | 15 Apr 2024
  • An Experimental Cloudformation language server

    1 project | news.ycombinator.com | 20 Mar 2024
  • A decent VS Code and Ruby on Rails setup

    8 projects | news.ycombinator.com | 21 Feb 2024
  • Amazon MSK 101 with Python

    1 project | dev.to | 13 Feb 2024
  • A guide on Neovim's LSP client

    7 projects | dev.to | 13 Jan 2024
  • Build Server Protocol

    1 project | news.ycombinator.com | 3 Jan 2024
  • Show HN: Common Lisp Vim Compiler Plug-In

    2 projects | news.ycombinator.com | 30 Dec 2023
  • A note from our sponsor - InfluxDB
    www.influxdata.com | 10 May 2024
    Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality. Learn more →

Index

What are some of the best open-source language-server-protocol projects? This list will help you:

Project Stars
1 theia 18,847
2 ale 13,295
3 nvim-lspconfig 9,585
4 Spyder 8,057
5 lsp-mode 4,672
6 ccls 3,647
7 LanguageClient-neovim 3,547
8 lsp-zero.nvim 3,523
9 postgres_lsp 3,134
10 vim-lsp 3,019
11 nvim 1,946
12 vista.vim 1,873
13 vim-config 1,830
14 jupyterlab-lsp 1,733
15 typescript-language-server 1,714
16 marksman 1,697
17 pylance-release 1,653
18 eclipse.jdt.ls 1,651
19 LSP 1,597
20 vscode-intelephense 1,545
21 KotlinLanguageServer 1,506
22 elixir-ls 1,386
23 nvim-navic 1,295

Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com