JsonRPC/README.md

48 lines
1.1 KiB
Markdown

# JSON-RPC 2.0 Code-Gen
Type/Service definition language and code generator for json-rpc 2.0. Currently generating code for NodeJS, Deno and the Web. Other targets are possible, but not implemented yet.
| Name | Description |
| ------- | --------------------------------- |
| ts-node | Typescript for NodeJS |
| ts-esm | Typescript in ESM format for Deno |
## Usage
Create a definition file like `test.jrpc`:
```jrpc
enum TestEnum {
VAL1,
VAL2,
VAL10 = 10,
VAL11,
VAL12
}
type Test {
testen: TestEnum;
someString: string;
someNumber: number;
array: string[];
map: {number, TestEnum};
}
service TestService {
@Description("This Function adds two number")
@Param("v1", "The first Number")
@Param("v2", "The second Number")
@Returns("The added values of the two numbers")
AddNumbers(v1: number, v2: number): number;
notification SendTest(test: Test);
}
```
Then run the generator like this `jrpc compile test.jrpc -o=ts-node:output/`.
This will generate the Client and Server code in the specified folder.
//TODO: Make Documentation better