typescript library for common functions compatible with gomatrixserverlib
This is a JavaScript invocable set of library methods, in the form of an npm module, supporting chat federation via a matrix.org compatible protocol.
This library is a port of the gomatrixservlib, currently a work-in-progress from matrix.org.
tsmatrixserverlib is written in TypeScript, although calling client can be in JavaScript or TypeScript.
We selected TypeScript over JavaScript because:
- Golang is strongly typed, TypeScript adds type support to JavaScript; we feel this will make the porting exercise easier
- tsmatrixserverlib will likely gain complexity over time with multiple contributors, and TypeScript is more suitable for team collaborating on complex project
The is work in progress. We will update this page from time to time.
The project aims at replacing Hubot-Freddie bridge with Federation API taking its place.The concept of Federation API is originally derived from Federation API.Understanding the Federation API document is really necessary in order to contribute to Repository.The reference library is gomatrixserverlib.
- transaction.ts
- timestamp.ts
- stateresolution.ts
- signing.ts
- resolve.ts
- request.ts
- redactevent.ts
- keys.ts
- keyring.ts
- json.ts
- federationtypes.ts
- federationclient.ts
- eventcrypto.ts
- eventcontent.ts
- eventauth.ts
- event.ts
- clientevent.ts
- client.ts
- base64.ts
$ git clone https://github.com/RocketChat/tsmatrixserverlib.git
$ git checkout develop
$ sh run_tests.sh
*Contributions are welcome