Commit Graph

8 Commits

Author SHA1 Message Date
plenarius dc45098cd1 feat: add NWN server stack management service 2026-04-20 19:55:31 -04:00
plenarius 59909a7b48 feat: add module build service with nasher compile and pack 2026-04-20 19:50:07 -04:00
plenarius b7177a8fd7 feat: connect NWScript language server to Monaco via WebSocket
Add the forked nwscript-ee-language-server as a git submodule and wire
it up to the editor through a WebSocket-based LSP bridge:

- Backend: lsp.service.ts spawns the language server in --stdio mode
  and bridges JSON-RPC messages between WebSocket and stdin/stdout
- Backend: /ws/lsp upgrade handler in index.ts
- Frontend: LspClient class using vscode-ws-jsonrpc for JSON-RPC over
  WebSocket, with Monaco providers for completions, hover, and
  diagnostics
- Frontend: useLspClient/useLspDocument hooks integrated into
  MonacoEditor component
2026-04-20 19:41:05 -04:00
plenarius 64908098cd feat: add integrated terminal with xterm.js and shell sessions 2026-04-20 19:32:02 -04:00
plenarius 02ca134743 feat: add file explorer with tree view and IDE layout
Backend: editor service for directory tree reading and file CRUD,
editor routes at /api/editor with path traversal protection.

Frontend: FileExplorer tree component with expand/collapse directories,
IDELayout with sidebar + header + outlet, wired into App routing.
Editor now receives state as props from App for cross-component file loading.
2026-04-20 19:09:19 -04:00
plenarius ec8aaf64a3 feat: add Docker service for container management and image pulls 2026-04-20 18:29:09 -04:00
plenarius ee7a0783ea feat: add workspace service and route for directory management 2026-04-20 18:26:51 -04:00
plenarius 421d591c1e feat: add Express + WebSocket server entry point 2026-04-20 18:25:10 -04:00