A Matrix (https://matrix.org/docs/spec/) to Fediverse / ActivityPub client / bridge. Also, some media proxying.
Find a file
2021-01-17 18:05:13 +08:00
commands refactor(all): prefer token-based authentication 2021-01-17 17:58:02 +08:00
.gitignore chore(ignore): add matrix/fediverse auth 2021-01-17 18:05:13 +08:00
auth.js refactor(all): prefer token-based authentication 2021-01-17 17:58:02 +08:00
config.example.js refactor(all): prefer token-based authentication 2021-01-17 17:58:02 +08:00
fediverse_auth.json refactor(all): prefer token-based authentication 2021-01-17 17:58:02 +08:00
LICENSE Initial commit 2019-07-03 13:35:09 -04:00
main.js refactor(all): prefer token-based authentication 2021-01-17 17:58:02 +08:00
matrix_auth.json refactor(all): prefer token-based authentication 2021-01-17 17:58:02 +08:00
notification.json feat(cmd): update help && style(json): remove events 2020-05-17 01:01:56 +08:00
package.json refactor(all): prefer token-based authentication 2021-01-17 17:58:02 +08:00
README.md chore(md): prepare for release 2020-06-26 01:04:00 +08:00
registrar.js refactor(all): prefer token-based authentication 2021-01-17 17:58:02 +08:00
timeline.json feat(cmd): update help && style(json): remove events 2020-05-17 01:01:56 +08:00
yarn.lock feat(cmd): add subjects. refactor(cmd): handling. fix(nitter): quotes. chore(config): update invidious instances. update deps. 2020-11-02 22:48:07 +08:00

Plemara

Plemara acts as a Matrix bridge to the Fediverse. This application should allow you to do most actions on the Fediverse including livefeed, posting, subscribing, etc. via Matrix. Configuration for the app can be found in config.js. You will need to provide a Matrix username and password for the bridge to work, this can be done through an account made on @matrix.org, or your own homeserver. For the Fediverse side, you will need an access_token, this can be created through the CURL steps below. You would replace fediverse.site with where you would like to run the bridge from.

Installation

  1. git clone https://github.com/vulet/plemara
  2. cd plemara && yarn install
  3. node main.js

Generating an access_token

  1. curl -X POST -d "client_name=<NAME HERE>&redirect_uris=urn:ietf:wg:oauth:2.0:oob&scopes=write follow read&website=http://fediverse.site" https://fediverse.site/api/v1/apps

Result:

{"client_id":"result",
"client_secret":"result",
"id":"result",
"name":"result",
"redirect_uri":"urn:ietf:wg:oauth:2.0:oob",
"website":"http://fediverse.site",
"vapid_key":"vapid_key"}
  1. curl -X POST -d "client_id=sekret&client_secret=sekret&scope=write follow read&grant_type=password&username=sekret@email.com&password=sekret" https://fediverse.site/oauth/token

Result:

{"token_type":"Bearer",
"scope":"write read",
"me":"https://fediverse.site/users/<your username>",
"access_token":"result"}

The access_token from the above command is then stored in the config.js file.

Extra Features

  • Nitter.net / Twitter
  • Invidio.us / YouTube
  • Archive.is

Contributors

CryptoMooners