Skip to content

lsp: add WebSocket transport module#1889

Merged
brharrington merged 1 commit intoNetflix:mainfrom
brharrington:lspapi
Mar 25, 2026
Merged

lsp: add WebSocket transport module#1889
brharrington merged 1 commit intoNetflix:mainfrom
brharrington:lspapi

Conversation

@brharrington
Copy link
Copy Markdown
Contributor

Add atlas-lspapi module providing a Pekko HTTP WebSocket transport for the LSP servers. This enables embedding the LSP in an Atlas web server, allowing browser-based editors (like the Monaco test client) to connect via WebSocket instead of stdio.

Components:

  • LspApi: Pekko HTTP route that upgrades to WebSocket and bridges to an LSP server's stdin/stdout streams
  • LspWebSocketFlow: bidirectional flow that frames LSP JSON-RPC messages over WebSocket text frames

Add atlas-lspapi module providing a Pekko HTTP WebSocket
transport for the LSP servers. This enables embedding the
LSP in an Atlas web server, allowing browser-based editors
(like the Monaco test client) to connect via WebSocket
instead of stdio.

Components:
- LspApi: Pekko HTTP route that upgrades to WebSocket and
  bridges to an LSP server's stdin/stdout streams
- LspWebSocketFlow: bidirectional flow that frames LSP
  JSON-RPC messages over WebSocket text frames
@brharrington brharrington added this to the 1.9.0 milestone Mar 25, 2026
@brharrington brharrington merged commit deaf510 into Netflix:main Mar 25, 2026
5 checks passed
@brharrington brharrington deleted the lspapi branch March 25, 2026 18:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant