rdesign/frontend/node_modules/vscode-jsonrpc
Jeff Emmett 80f1e96e6b Fix frontend build: type errors, SDK handling, docker context
- Use jq to cleanly remove encryptid SDK from package.json in Docker
- Fix TypeScript strict mode errors in dashboard and assistant
- Add .dockerignore to exclude node_modules from build context
- Use project root as Docker build context for frontend
- Fix Traefik routing: separate frontend/api/studio paths

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-24 02:21:52 +00:00
..
lib Fix frontend build: type errors, SDK handling, docker context 2026-03-24 02:21:52 +00:00
typings Fix frontend build: type errors, SDK handling, docker context 2026-03-24 02:21:52 +00:00
License.txt Fix frontend build: type errors, SDK handling, docker context 2026-03-24 02:21:52 +00:00
README.md Fix frontend build: type errors, SDK handling, docker context 2026-03-24 02:21:52 +00:00
browser.d.ts Fix frontend build: type errors, SDK handling, docker context 2026-03-24 02:21:52 +00:00
browser.js Fix frontend build: type errors, SDK handling, docker context 2026-03-24 02:21:52 +00:00
node.cmd Fix frontend build: type errors, SDK handling, docker context 2026-03-24 02:21:52 +00:00
node.d.ts Fix frontend build: type errors, SDK handling, docker context 2026-03-24 02:21:52 +00:00
node.js Fix frontend build: type errors, SDK handling, docker context 2026-03-24 02:21:52 +00:00
package.json Fix frontend build: type errors, SDK handling, docker context 2026-03-24 02:21:52 +00:00
thirdpartynotices.txt Fix frontend build: type errors, SDK handling, docker context 2026-03-24 02:21:52 +00:00

README.md

VSCode JSON RPC

NPM Version NPM Downloads Build Status

This npm module implements the base messaging protocol spoken between a VSCode language server and a VSCode language client.

The npm module can also be used standalone to establish a JSON-RPC channel between a client and a server. Below an example how to setup a JSON-RPC connection. First the client side.

import * as cp from 'child_process';
import * as rpc from 'vscode-jsonrpc/node';

let childProcess = cp.spawn(...);

// Use stdin and stdout for communication:
let connection = rpc.createMessageConnection(
	new rpc.StreamMessageReader(childProcess.stdout),
	new rpc.StreamMessageWriter(childProcess.stdin));

let notification = new rpc.NotificationType<string, void>('testNotification');

connection.listen();

connection.sendNotification(notification, 'Hello World');

The server side looks very symmetrical:

import * as rpc from 'vscode-jsonrpc/node';


let connection = rpc.createMessageConnection(
	new rpc.StreamMessageReader(process.stdin),
	new rpc.StreamMessageWriter(process.stdout));

let notification = new rpc.NotificationType<string, void>('testNotification');
connection.onNotification(notification, (param: string) => {
	console.log(param); // This prints Hello World
});

connection.listen();

History

5.0.0

  • add progress support
  • move JS target to ES2017

4.0.0

  • move JS target to ES6.

3.0.0:

  • converted the NPM module to use TypeScript 2.0.3.
  • added strict null support.
  • support for passing more than one parameter to a request or notification.
  • Breaking changes:
    • due to the use of TypeScript 2.0.3 and differences in d.ts generation users of the new version need to move to TypeScript 2.0.3 as well.

License

MIT