20 Repos
Implementations of the Language Server Protocol to provide editor intelligence and formatting.
Distinct from LSP Integrations: The candidates are either for specific clients or specific languages like SQL, whereas this is a general LSP server implementation.
Explore 20 awesome GitHub repositories matching development tools & productivity · Language Server Protocol Implementations. Refine with filters or upvote what's useful.
Buf is a toolchain for managing the full lifecycle of Protocol Buffers schemas. It provides a set of tools for schema governance, including linting to enforce style guides, a breaking change detector to ensure backward compatibility, and a system for producing language-specific source code via local or remote plugins. The project distinguishes itself through a remote schema registry that centralizes the hosting, versioning, and distribution of Protocol Buffers modules. This registry allows for server-side enforcement of governance policies, such as blocking updates that introduce backward-inc
Implements the Language Server Protocol to provide editor intelligence and formatting for Protocol Buffer schemas.
Templ is a type-safe HTML templating engine and UI framework for Go. It provides a system for building reusable HTML components that compile into Go code for server-side rendering, ensuring type safety and compile-time validation of data and logic. The project features a dedicated language server that provides autocomplete and syntax validation for template files within supported code editors. It employs compile-time code generation to transform a custom template language into Go source code, enabling the creation of modular HTML fragments and logic blocks. The framework includes automated s
Implements the Language Server Protocol to provide real-time syntax highlighting and autocomplete within code editors.
TFLint ist ein statisches Analysetool und Infrastructure-as-Code-Validator, das darauf ausgelegt ist, Fehler zu identifizieren und Best Practices innerhalb von Terraform-Konfigurationsdateien durchzusetzen. Es fungiert als Qualitäts-Gate für automatisierte Workflows und als Language-Server, der Echtzeit-Diagnosen und Linting-Fehler direkt innerhalb unterstützter Texteditoren bereitstellt. Das Projekt nutzt ein gRPC-Plugin-Framework, das die Integration benutzerdefinierter, anbieterspezifischer Validierungsregeln über unabhängige Binärdateien und ein dediziertes SDK ermöglicht. Diese Architektur trennt die Kern-Linting-Logik von der Cloud-spezifischen Validierung und unterstützt die automatisierte Installation externer Regelsätze, um Ressourceneigenschaften gegen offizielle Spezifikationen zu prüfen. Die Analyse-Engine löst Konfigurationswerte auf und wertet integrierte Funktionen aus, wobei dynamische Blöcke und Ressourcensammlungen erweitert werden, um die endgültige instanziierte Struktur zu untersuchen. Sie deckt die Durchsetzung von Codierungsstandards, Modulaufruf-Analysen und die Erkennung ungültiger Ressourcenattribute ab, mit der Möglichkeit, strukturierte Ergebnisse in Formaten wie SARIF zu exportieren. Das Tool enthält eine Kommandozeilenschnittstelle für die Filterung von Analyse-Zielen und bietet automatische Fehlerkorrektur für unterstützte Regeln.
Implements the Language Server Protocol to provide real-time diagnostics and linting errors within text editors.
Phan ist ein statischer Analysator und Typ-Prüfer für PHP, der Fehler und Typ-Inkompatibilitäten identifiziert, ohne den Code auszuführen. Er dient als Qualitäts-Gate für Continuous-Integration-Pipelines und als Tool zur Überprüfung der Typsicherheit, wobei er insbesondere Union-Types, Generics und Array-Shapes prüft. Das Projekt zeichnet sich durch die Verwendung eines Hintergrund-Daemons und die Implementierung des Language Server Protocol aus, die Echtzeit-Diagnosen und Navigation innerhalb von Editoren ermöglichen. Es verfügt zudem über ein Baseline-basiertes Unterdrückungssystem, das es Entwicklern erlaubt, bestehende Fehler in einer Snapshot-Datei zu erfassen, um sich ausschließlich auf neue Regressionen zu konzentrieren. Die Analyse-Engine deckt ein breites Spektrum an Funktionen ab, einschließlich der Erkennung von Dead Code, der Validierung der Sprachkompatibilität über verschiedene PHP-Versionen hinweg sowie der Inferenz von Variablen- und Template-Typen. Sie unterstützt erweiterbare Analysen durch ein Plugin-System und bietet automatisierte Code-Korrekturen für eine Teilmenge der erkannten Probleme. Benutzer können den Prozess durch die Generierung einer Konfigurationsdatei mit wählbaren Strengegraden (Strictness Levels) bootstrappen, um ihre Codebasis schrittweise zu validieren.
A background daemon that provides real-time PHP analysis and IDE integration via a standard protocol.
Dies ist ein Code-Formatter für Blade-Template-Dateien, der Einrückungen und Abstände innerhalb des VS Code-Editors standardisiert. Er fungiert als Template-Formatter und HTML-Attribut-Sorter, der Syntax und Layout basierend auf benutzerdefinierten oder vorgegebenen Stilregeln bereinigt. Das Tool zeichnet sich dadurch aus, dass es automatisch HTML-Attribute organisiert und Tailwind CSS-Utility-Klassen in eine vorhersehbare Reihenfolge bringt. Es verwendet ein JSON-konfigurierbares System, um projektspezifische Regeln und Ausschlusslisten zu laden, wodurch Teams Code-Stile synchronisieren und Versionskonflikte vermeiden können. Zu den umfassenden Funktionen gehören die Verwaltung des Formatierungsumfangs durch globale Ignorierlisten oder Inline-Kommentare, die Validierung von Konfigurationsdateien anhand eines formalen Schemas sowie die Anpassung von Einrückungs- und Leerzeichenregeln. Das Projekt integriert sich über das Language Server Protocol in den Editor.
Implements the Language Server Protocol to provide editor intelligence and automated formatting.
Dhall ist eine typsichere Konfigurationssprache, die darauf ausgelegt ist, programmierbare Konfigurationsdateien zu erstellen, deren Terminierung garantiert ist. Es handelt sich um eine nicht-turing-vollständige Sprache, die ein striktes Typsystem verwendet, um Korrektheit sicherzustellen und Endlosschleifen während der Auswertung zu verhindern. Das Projekt fungiert als deterministische Konfigurations-Engine und Marshalling-Tool, das programmierbare Ausdrücke in statische Formate wie JSON, YAML und Bash konvertiert. Es zeichnet sich durch einen Fokus auf Sicherheit und Integrität aus, indem es semantisches Hashing verwendet, um Remote-Importe zu pinnen, und Ursprungsrichtlinien durchsetzt, um Datenabfluss zu verhindern. Die Funktionen decken ein breites Spektrum der Konfigurationsverwaltung ab, einschließlich der Verwendung polymorpher Funktionen, Union-Types und Record-Completion zur Reduzierung von Redundanz. Es bietet Tools für Schema-Validierung, Remote-Ausdrucksauflösung und eine Language-Server-Protocol-Implementierung für die Editor-Integration. Die Sprache bietet eine Befehlszeilenschnittstelle und ein REPL zur Auswertung von Ausdrücken und zur Verifizierung der Gleichheit.
Implements the Language Server Protocol to provide auto-completion and formatting for configuration files in compatible editors.
lua-language-server ist ein statisches Analysetool und Typ-Checker für die Sprache Lua, der das Language Server Protocol implementiert. Er bietet ein System zur Erkennung von Typ-Diskrepanzen, ungenutztem Code und Logikfehlern in Quelldateien. Das Projekt bietet ein inferenzbasiertes Typsystem, das Variablentypen ableitet und optionale Annotationen sowie Meta-Dateien zur Durchsetzung von Typsicherheit unterstützt. Es ermöglicht die Definition benutzerdefinierter Typen und Funktionssignaturen, einschließlich Unterstützung für Overloads und Sichtbarkeitskontrollen für Member. Der Server bietet eine breite Palette an IDE-Funktionen, einschließlich Echtzeit-Code-Autocompletion, Symbol-Refactoring sowie Navigation zu Definitionen und Implementierungen. Er enthält einen Code-Formatter und einen Dokumentationsgenerator, der Symbole und Annotationen extrahiert, um Markdown- und JSON-Dateien zu produzieren. Der Server kann aus dem Quellcode gebaut und an spezifische Sprachversionen und Laufzeitumgebungen angepasst werden.
Implements the Language Server Protocol to provide editor intelligence and formatting for Lua.
sourcekit-lsp is a language server protocol implementation and IDE code intelligence backend. It functions as a Swift language server and source code indexer, providing semantic analysis, autocomplete, and navigation features to compatible text editors. The project integrates directly with the Swift toolchain and SourceKit framework to deliver precise type information. It also leverages Clang-integrated parsing to provide semantic analysis for C-family languages, enabling cross-language navigation across project files. The server manages source code indexing and symbol lookups while using a
Implements the Language Server Protocol to provide standardized autocomplete and navigation for Swift and C-family languages.
dprint is a multi-language code formatter that applies consistent styling across various programming languages using a pluggable architecture. It functions as a unified project style management tool, a command-line interface for continuous integration style enforcement, and a Language Server Protocol implementation for real-time formatting in editors. The project is distinguished by a WebAssembly-based plugin system that loads sandboxed formatting logic from URLs or file paths. It further extends its capabilities through a process-based tool integration that wraps external command-line interf
Implements the Language Server Protocol to provide real-time formatting and diagnostics within supported editors.
RLS is a language server that provides language intelligence for the Rust programming language. It implements the Language Server Protocol to enable a standardized communication layer between the Rust compiler and various editor clients. The project focuses on providing real-time code completions, symbol navigation, and type information. It also supports automated structural changes, such as workspace-wide symbol renaming, to maintain semantic correctness during refactoring. The system incorporates static code analysis for linting and formatting, alongside a mechanism for incremental compila
Implements the Language Server Protocol to enable a standardized communication layer between the Rust compiler and editors.
Marksman is a Language Server Protocol implementation for Markdown that provides advanced editor features including autocomplete, go-to-definition, and hover support for markdown files. It serves as an analysis engine to manage documentation and knowledge bases through automated link validation and consistent cross-referencing across multiple documents. The project enables the navigation of complex networks of wiki-style links and headings. It supports content refactoring, allowing users to rename headings and update internal references across multiple files to maintain document integrity dur
Implements the Language Server Protocol to provide editor intelligence, autocomplete, and go-to-definition for markdown files.
The Haskell Language Server is an implementation of the Language Server Protocol that provides real-time diagnostics, code navigation, and refactoring support for Haskell projects. It functions as a backend service that enables advanced editing capabilities within standard text editors by facilitating communication between the development environment and the Haskell compiler. The project distinguishes itself through a modular, plugin-based architecture that allows for the integration of independent components for specific language features. It leverages the host compiler as a library to perfo
Implements the language server protocol to provide real-time diagnostics, code navigation, and refactoring support for Haskell projects.
kotlin-lsp is a language server implementation that integrates editors with the Kotlin compiler and build tools to provide language intelligence and code analysis. It uses the Language Server Protocol to decouple heavy language processing from the text editor user interface. The project provides static code analysis to detect issues and provide real-time diagnostics. It enables source code navigation through symbol-index based jumping to definitions and an analysis of how components interact. Additional capabilities include automated source code formatting, intelligent code completion, and s
Provides a full LSP implementation to bring intelligence and refactoring capabilities to compatible editors.
Tinymist is a comprehensive suite of tools for Typst document authoring, serving as a language server, document compiler, and project manager. It provides a standardized language service via the Language Server Protocol to enable editor features such as autocompletion, navigation, and semantic highlighting. The project distinguishes itself by integrating a TCP-based live preview server for real-time visual rendering and an advanced static analysis tool that utilizes abstract syntax trees and bidirectional type checking. It also includes a project management system capable of handling multi-fi
Implements the Language Server Protocol to provide editor features like autocompletion, navigation, and semantic highlighting.
The Python Language Server is a backend engine that provides code intelligence, autocompletion, and diagnostics for Python projects. By implementing the standardized Language Server Protocol, it enables consistent development features such as definition navigation, signature help, and documentation lookups across various text editors and integrated development environments. The project functions as a modular framework that utilizes a plugin-based architecture to support third-party extensions. This design allows for the dynamic injection of specialized capabilities, including custom type chec
Implements the Language Server Protocol to provide editor-agnostic code intelligence and diagnostics.
likec4 is an architecture-as-code framework that transforms text-based architecture definitions into interactive diagrams, static websites, and image files. It serves as a system architecture visualizer and C4 model diagram generator, allowing users to define software components, boundaries, and deployment infrastructure using a domain-specific language. The tool distinguishes itself by providing a modeling environment with Language Server Protocol integration for real-time validation and autocomplete. It enables interactive architecture documentation where users can navigate through hierarch
Implements the Language Server Protocol to provide real-time validation, autocomplete, and navigation for the modeling language.
Provides an implementation of the Language Server Protocol for Python that offers code analysis, completions, and refactoring.
The Kotlin Language Server is a static code analysis tool that provides real-time intelligence for Kotlin projects. By implementing the Language Server Protocol, it enables developers to access professional-grade development features, such as code completion, diagnostics, and navigation, within any compatible text editor. The project distinguishes itself through an architecture that maintains persistent, in-memory compiler instances to facilitate rapid, incremental recompilation during active development. It supports remote hosting via TCP, allowing editors to connect to centralized analysis
Implements the Language Server Protocol to provide professional-grade code completion, diagnostics, and navigation to any compatible text editor.
The YAML Language Server is a backend service that provides intelligent editing support for YAML files by implementing the Language Server Protocol. It functions as a validation and analysis engine, enabling code editors to offer real-time diagnostics, structural feedback, and automated assistance for configuration-heavy development workflows. The project distinguishes itself through its schema-driven approach to data integrity, utilizing a JSON Schema validation engine to verify document structure against formal definitions. It supports complex configuration management by allowing developers
Communicates with code editors using a standardized JSON-RPC interface to provide real-time diagnostics and intelligent code assistance.
This project is a language server implementation and code editor extension designed to provide intelligence for Svelte components. It functions as a static analysis tool that parses source code to deliver real-time feedback, automated formatting, and code navigation within development environments. The tool distinguishes itself by utilizing a virtual file system mapping that translates component files into modules, allowing standard language tools to process non-standard syntax. It integrates directly with the TypeScript compiler to perform type checking and static analysis across mixed scrip
Implements the language server protocol to enable custom intelligence in various code editors.