sirdez
rocketrpc
sirdez | rocketrpc | |
---|---|---|
3 | 3 | |
28 | 154 | |
- | - | |
0.0 | 4.3 | |
over 1 year ago | 3 months ago | |
TypeScript | TypeScript | |
MIT License | - |
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.
sirdez
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?
OpenSERDES - Digitally synthesizable architecture for SerDes using Skywater Open PDK 130 nm technology.
threadbox - Recursive Worker Threads in NodeJS
prim-rpc - Easy-to-understand, type-safe, transport-agnostic RPC/IPC for JavaScript, supporting callbacks, batching, file handling, custom serialization, and more.
prray - "Promisified" Array, it compatible with the original Array but comes with async versions of native Array methods
unix-dgram-socket - Node implementation of unix datagram socket writed in TypeScript
livegollection-client - livegollection-client is the JavaScript/TypeScript client-side library to interact with the correspondant server-side Golang library livegollection.
graphql-yoga - 🧘 Rewrite of a fully-featured GraphQL Server with focus on easy setup, performance & great developer experience. The core of Yoga implements WHATWG Fetch API and can run/deploy on any JS environment.
ruls - 📏 Typesafe rules engine with JSON encoding.
leap-year - ❓ Check if a year is a leap year
worker-rpc
stablelib - A stable library of useful TypeScript/JavaScript code
wari - A type-safe way to create and handle errors.