Under the hood

fastapi

for handling server side websocket communciation

aiohttp

ClientSessions for the client-side websocket communication,

makefun

along with some standard library 'inspect' magic for translating origin functions into proxy-useable functions with parameter validation, and lastly

pyjwt

for authentication & encryption.

Other Info

Registered functions are made available as callables which return co-routines and thus 'awaitable' to the remote-endpoints, this is true for both async and non-async registered functions. Due to this, the functions must be awaited within a running event_loop. When called, the input parameters are verified via the origin functions signature.