Go to file
Henrik Jess Nielsen 3b7c29d1e6
All checks were successful
Build and Deploy iLSP / test (push) Successful in 22s
Build and Deploy iLSP / build-and-deploy (push) Successful in 1m49s
feat: add landing page at /
Clean HTML page describing iLSP, what LSP is, the WebSocket endpoints,
and setup instructions for Neovim, IntelliJ and VS Code. Live stats
(Bicep modules, pipeline templates, PyPI packages) are rendered from
the in-memory catalog at request time.

No emojis. Minimal CSS, no external dependencies.
2026-05-10 18:17:14 +02:00
2026-05-10 18:17:14 +02:00

iLSP — Internal LSP Proxy

Self-hosted Language Server Protocol proxy for LRU's internal tooling. Runs at https://ilsp.i80.dk (Nomad/Docker, autobox.i80.dk).

Provides smart autocomplete on top of standard LSPs:

Language Endpoint Extra completions
Bicep wss://ilsp.i80.dk/bicep Internal ACR modules, versions, params
YAML wss://ilsp.i80.dk/yaml AzDO pipeline templates, GHA reusable workflows
Python wss://ilsp.i80.dk/python Jedi (standard)

→ See EDITOR_SETUP.md for editor configuration and a full feature overview.

Quick start

# Check service health
curl https://ilsp.i80.dk/health

# Run smoke tests
python3 scripts/smoke_test_completions.py

# Local dev
make run        # build + start + health check
make run-quick  # start without rebuilding
make logs       # tail container logs
make health     # curl health endpoint

Updating catalogs

python3 scripts/sync_pipeline_templates.py  # scan AzDO + GHA template repos
bash scripts/push_catalogs.sh               # scp to server + /reload

Deploy

Push to main → Gitea Actions builds image → Nomad deploys automatically.

# Manual deploy (if CI is down)
git push
ssh autobox.i80.dk 'nomad job run /opt/nomad/jobs/ilsp.nomad'
Description
No description provided
Readme 374 KiB
Languages
Python 89.8%
Shell 4.2%
Makefile 2.8%
HCL 1.7%
Dockerfile 1.5%