# LSP - VSCode extension
**Author**: FTL Team
**Status**: ==draft== / in-review / accepted / rejected
## Description
FTL build errors will be shown inline in vscode to improve the developer/debug experience.
## Goals
- Propagate FTL schema validation and build errors to VScode via an LSP
## Non-Goals (optional)
- Implementing a full featured VSCode extension with custom UI
## Design
```mermaid
graph LR
go-runtime -- STDERR --> FTL
kotlin-runtime -- STDERR --> FTL
FTL --> STDERR
FTL --> Language-Server
Language-Server --> VSCode
```
Link to quick sketches:
https://excalidraw.com/#room=a2a7fb95e8afb032e0bc,SNfXkJvgCBfyGpYqFrCZyQ
## Rejected Alternatives (optional)
Injecting language server into `buildengine` causes tight coupling between the two.
Using a custom error struct in go-runtime and sending custom errors to the LSP. This solution works for `go` but will not work for other runtimes.