https://github.com/webrpc/ridl-lsp
Language Server for RIDL
https://github.com/webrpc/ridl-lsp
Last synced: 3 months ago
JSON representation
Language Server for RIDL
- Host: GitHub
- URL: https://github.com/webrpc/ridl-lsp
- Owner: webrpc
- License: mit
- Created: 2026-03-16T08:45:01.000Z (4 months ago)
- Default Branch: master
- Last Pushed: 2026-03-30T19:46:19.000Z (3 months ago)
- Last Synced: 2026-03-30T20:06:30.667Z (3 months ago)
- Language: Go
- Size: 215 KB
- Stars: 3
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# RIDL LSP
This repository hosts a standalone Go language server for webrpc RIDL files.
The initial layout is intentionally small:
```text
.
├── cmd/ridl-lsp
│ └── main.go
├── internal/documents
│ └── store.go
├── internal/lsp
│ ├── server.go
│ └── stubs.go
├── internal/ridl
│ └── parser.go
├── internal/workspace
│ └── manager.go
└── go.mod
```
The package split follows the shape we want for a RIDL-specific server:
- `cmd/ridl-lsp`: binary entrypoint and transport wiring.
- `internal/lsp`: LSP method handlers and capability declarations.
- `internal/documents`: open-document state, versions, and in-memory overlays.
- `internal/workspace`: workspace root management and path helpers.
- `internal/ridl`: parser and semantic-analysis boundary for RIDL-specific logic.
This is meant to stay closer to a focused custom-language server such as `sqls`
than to the much heavier `gopls` architecture. If we need snapshots, indexing,
or background analysis later, we can grow into that deliberately.
Current assumption:
- module path: `github.com/webrpc/ridl-lsp`
If you want a different repo/module name, we should rename it early before we
start adding imports across packages.