2022-02-06 20:46:27 +00:00
# Fedifeed
2017-04-30 18:03:49 +00:00
2022-02-06 21:25:51 +00:00
[![Build Status ](https://ci.git.froth.zone/api/badges/Sam/fedifeed/status.svg )](https://ci.git.froth.zone/Sam/fedifeed)
2022-02-06 23:26:34 +00:00
Embed an activitypub feed in your blog et cetera. \
This is a fork of [mastofeed ](https://github.com/fenwick67/mastofeed ) that adds support for more themes and Misskey.
2017-04-30 18:03:49 +00:00
2022-02-06 20:46:27 +00:00
https://www.fedifeed.com
2017-04-30 18:26:13 +00:00
2017-04-30 20:07:01 +00:00
## User guide
2017-04-30 18:03:49 +00:00
The homepage has a tool for generating iframe code for you, with a sensible `sandbox` attribute. The feeds fit comfortably in a 400px wide area.
## API
2022-02-06 19:14:18 +00:00
### V1
2019-08-02 17:33:03 +00:00
2022-02-06 19:14:18 +00:00
#### GET `/api/v1/feed`
2019-08-02 17:33:03 +00:00
2022-02-06 20:46:27 +00:00
> example: `/api/v1/feed?userurl=https%3A%2F%2Foctodon.social%2Fusers%2Ffenwick67&scale=90&theme=masto-light`
2019-08-02 17:33:03 +00:00
2022-02-06 20:46:27 +00:00
Returns a html page which displays a feed for a user URL. Note that URLs must be URI encoded (i.e. `encodeURIComponent('https://octodon.social/users/fenwick67')` ).
2019-08-02 17:33:03 +00:00
Querystring options:
| option | required | description |
| ------ | -------- | ----------- |
2022-02-06 20:46:27 +00:00
| `userurl` | ** \*** | Mastodon/Pleroma/Misskey account URL (usually `https://${instance}/users/${username}` for MastoAPI or `https://${instance}/@${username}` for Misskey) |
| `instance` | ** \*\***| Mastodon/Pleroma/Misskey instance URL (usually `https://${instance}` ) |
| `user` | ** \*\*** | Mastodon/Pleroma/Misskey user ID (usually `${username}` ) |
2019-08-02 17:33:03 +00:00
| `feedurl` | no | a URL to a page of an ActivityPub post collection. Only used for pages beyond the first. |
2022-02-06 19:14:18 +00:00
| `theme` | no | either `masto-dark` , `masto-light` or `masto-auto` , to select the UI theme (default is `masto-dark` ). `auto` will appear masto-light unless the user sets up masto-dark mode on their device. |
2019-08-02 17:33:03 +00:00
| `boosts` | no | whether to show boosts or not |
| `replies` | no | whether to show replies or not |
| `size` | no | the scale of the UI in percent. |
2022-02-06 20:46:27 +00:00
\* `userurl` is required if `instance` and `user` are not specified.\*\*\* \
\*\* `instance` **and** `user` are required if `userurl` is not specified.\*\*\*
\*\*\* ** `userurl` and `instance` /`user` are mutually exclusive.**
2017-04-30 20:07:01 +00:00
## Server Installation
2017-04-30 18:03:49 +00:00
2022-02-06 20:46:27 +00:00
This is a straightforward node project with zero databases or anything, you should just be able to run `yarn install` and then `yarn start` to get up and running. Set your `PORT` environment variable to change the port it listens on.
2017-04-30 18:03:49 +00:00
## Improve me
2022-02-06 19:14:18 +00:00
Feel free to add a caching layer, improve the styles and add more features.