# fwcd/kotlin-language-server

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/fwcd-kotlin-language-server).**

2,034 stars · 249 forks · Kotlin · MIT

## Links

- GitHub: https://github.com/fwcd/kotlin-language-server
- awesome-repositories: https://awesome-repositories.com/repository/fwcd-kotlin-language-server.md

## Topics

`atom` `autocomplete` `code-completion` `ide` `kotlin` `language-server` `language-server-protocol` `lsp` `vscode`

## Description

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 services, and provides mechanisms to extend the base protocol for specialized editor requirements.

The server integrates with existing build tools to automatically resolve project dependencies and classpaths, ensuring accurate analysis across complex codebases. It includes utilities for automated refactoring, such as global symbol renaming and import management, alongside support for executing script files directly within the development environment.

Users can configure memory allocation and initialization parameters to optimize performance for specific project sizes. The software is distributed as a packaged executable and includes tools for generating dependency license reports and verifying server logic.

## Tags

### Development Tools & Productivity

- [Language Server Integrations](https://awesome-repositories.com/f/development-tools-productivity/language-server-integrations.md) — Provides advanced code intelligence for Kotlin by implementing the Language Server Protocol.
- [Language Server Protocol Implementations](https://awesome-repositories.com/f/development-tools-productivity/language-server-protocol-implementations.md) — Implements the Language Server Protocol to provide professional-grade code completion, diagnostics, and navigation to any compatible text editor.
- [Static Code Analysis](https://awesome-repositories.com/f/development-tools-productivity/static-code-analysis.md) — Performs real-time static analysis, including syntax checking, symbol renaming, and dependency resolution, to provide immediate feedback during development.
- [Build Tool Integrations](https://awesome-repositories.com/f/development-tools-productivity/workflow-automation-tools/build-task-automation/build-tool-integrations.md) — Integrates with build systems to automate dependency resolution and classpath management.
- [CLI Editor Integrations](https://awesome-repositories.com/f/development-tools-productivity/cli-editor-integrations.md) — Bridges the analysis engine with text editors to deliver real-time code intelligence and diagnostics. ([source](https://github.com/fwcd/kotlin-language-server/blob/main/EDITORS.md))
- [Cross-Editor Development Environments](https://awesome-repositories.com/f/development-tools-productivity/cross-editor-development-environments.md) — Enables developers to use their preferred text editor while receiving professional-grade Kotlin analysis.
- [Language Servers](https://awesome-repositories.com/f/development-tools-productivity/language-servers.md) — Implements the Language Server Protocol to provide IDE-like intelligence for the Kotlin language. ([source](https://github.com/fwcd/kotlin-language-server/blob/main/BUILDING.md))
- [Remote Language Services](https://awesome-repositories.com/f/development-tools-productivity/remote-language-services.md) — Enables remote text editors to connect to a centralized analysis service over TCP for real-time code intelligence.

### Part of an Awesome List

- [Code Editors and IDEs](https://awesome-repositories.com/f/awesome-lists/devtools/code-editors-and-ides.md) — Provides professional-grade code intelligence and IDE features for Kotlin developers across various text editors. ([source](https://github.com/fwcd/kotlin-language-server#readme))

### Programming Languages & Runtimes

- [Incremental Compilation](https://awesome-repositories.com/f/programming-languages-runtimes/compile-time-expression-evaluation/runtime-code-compilation/incremental-compilation.md) — Integrates an in-memory compiler to facilitate rapid, partial recompilation during active development.
- [Incremental Compilation](https://awesome-repositories.com/f/programming-languages-runtimes/incremental-compilation.md) — Maintains an active compiler to perform incremental recompilation for rapid development feedback. ([source](https://github.com/fwcd/kotlin-language-server#readme))
- [Project Classpath Management](https://awesome-repositories.com/f/programming-languages-runtimes/project-classpath-management.md) — Automatically resolves project dependencies and classpaths by interfacing with build tools for accurate analysis. ([source](https://github.com/fwcd/kotlin-language-server#readme))

### Software Engineering & Architecture

- [Server Capability Extenders](https://awesome-repositories.com/f/software-engineering-architecture/integration-extensibility/extensibility/plugin-architectures/developer-authoring-interfaces/custom-module-implementations/module-functionality-extenders/cluster-functionality-extenders/server-capability-extenders.md) — Extends the base protocol with custom requests to support specialized editor features. ([source](https://github.com/fwcd/kotlin-language-server#readme))
- [Symbol Renamers](https://awesome-repositories.com/f/software-engineering-architecture/symbol-renamers.md) — Provides safe, project-wide symbol renaming to maintain code consistency. ([source](https://github.com/fwcd/kotlin-language-server/blob/main/TODO.md))
