servicebox
rocketrpc
servicebox | rocketrpc | |
---|---|---|
3 | 3 | |
22 | 154 | |
- | - | |
3.6 | 4.3 | |
about 2 years ago | 3 months ago | |
TypeScript | TypeScript | |
GNU General Public License v3.0 or later | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
servicebox
-
Functions without Borders - A typesafe RPC library thinning the boundaries between client and server
I agree https://github.com/sinclairzx81/servicebox
-
Mapping TypeScript's Type System to JSON Schema
Here is a follow on project that leverages TypeBox for such tasks (albeit over JSON-RPC) https://github.com/sinclairzx81/servicebox
- ServiceBox - Type Safe Web Services for Node
rocketrpc
-
A library for going general PRC between threads and processes using high-level classes
The project is split into several packages, to allow for plugin new transforms. The main package is the packages/rpc package. On the “client side” the library works by using a Proxy, where it can intercept the Getter on an object, and then provides a wrapped function instead. It then waits for the arguments to be passed in, and passes them on to the underlying transport. At this point the message is passed through the transport, which then invokes the handleInvocation function. This function then accesses the underlying class and calls the actual function. Then it uses Promise.resolve to allow handling of both promises and non-promise responses. The result is then sent back to the client where it gets unwrapped and then resolves the client-side promise. Through this model any system which has a way of sending events with data can be used. Here I needed a WebWorker, so that is what I originally implemented, but there should be no problem with wrapping a WebSocket like https://github.com/akash-joshi/functions-without-borders is doing.
-
Functions without Boundaries - A typesafe library for making transparent RPC calls over websockets
Check the source code here: https://github.com/akash-joshi/functions-without-borders
- Functions without Borders - A typesafe RPC library thinning the boundaries between client and server
What are some alternatives?
typebox - Json Schema Type Builder with Static Type Resolution for TypeScript
threadbox - Recursive Worker Threads in NodeJS
ajv - The fastest JSON schema Validator. Supports JSON Schema draft-04/06/07/2019-09/2020-12 and JSON Type Definition (RFC8927)
prray - "Promisified" Array, it compatible with the original Array but comes with async versions of native Array methods
typed-json-rpc - Simple, statically typed and ergonomic way to do async communications (events, workers, http requests) with json-rpc
livegollection-client - livegollection-client is the JavaScript/TypeScript client-side library to interact with the correspondant server-side Golang library livegollection.
JRPC-Server - JRPC-Server is an implementation of JSON-RPC 2.0 in Typescript
ruls - 📏 Typesafe rules engine with JSON encoding.
worker-rpc
wari - A type-safe way to create and handle errors.
wretch - A tiny wrapper built around fetch with an intuitive syntax. :candy:
real-cancellable-promise - Cancellable promise library for JavaScript and TypeScript.