A Matrix (https://matrix.org/docs/spec/) to Fediverse / ActivityPub client / bridge. Also, some media proxying.
Find a file
2020-05-17 01:01:56 +08:00
commands feat(cmd): update help && style(json): remove events 2020-05-17 01:01:56 +08:00
.gitignore Initial commit 2019-07-03 13:35:09 -04:00
config.js release 0.1.0 2019-07-03 17:27:39 -04:00
LICENSE Initial commit 2019-07-03 13:35:09 -04:00
main.js feat(cmd): add 10grans ez-tip && fix(cmd): media attachment && style(cmd): default format: markdown 2020-05-17 00:48:12 +08:00
notification.json feat(cmd): update help && style(json): remove events 2020-05-17 01:01:56 +08:00
package.json release 0.1.0 2019-07-03 17:27:39 -04:00
README.md refactor: readme styling 2019-07-04 19:59:08 -04:00
registrar.js feat(cmd): add 10grans ez-tip && fix(cmd): media attachment && style(cmd): default format: markdown 2020-05-17 00:48:12 +08:00
timeline.json feat(cmd): update help && style(json): remove events 2020-05-17 01:01:56 +08:00
yarn.lock chore(deps): bump lodash from 4.17.11 to 4.17.15 2019-09-04 09:25:24 -04: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.

Images

Bridge