1
2
Fork
You've already forked Buffalo
0
A single page ReactJS based ActivityPub Client.
  • JavaScript 97.4%
  • HTML 2.5%
  • Shell 0.1%
2023年08月14日 19:21:16 +02:00
assets Add pictures 2023年04月03日 20:11:42 +02:00
cosmos Enabling displaying conversations from an archive 2023年04月26日 21:01:35 +02:00
local Serving stuff 2023年07月25日 19:19:48 +02:00
src display fetch replies if no replies property 2023年08月14日 19:21:16 +02:00
.gitignore Serving stuff 2023年07月25日 19:19:48 +02:00
babel.config.json Initial commit 2023年03月05日 12:43:44 +01:00
cosmos.config.json More cleanup 2023年05月17日 17:16:42 +02:00
index.html Initial commit 2023年03月05日 12:43:44 +01:00
LICENSE More management stuff 2023年04月03日 19:11:09 +02:00
package-lock.json Add ability to fetch all replies 2023年07月23日 13:40:00 +02:00
package.json Add ability to fetch all replies 2023年07月23日 13:40:00 +02:00
README.md Navigation refactoring 2023年05月06日 18:34:38 +02:00
server.js Initial commit 2023年03月05日 12:43:44 +01:00

buffalo

A buffalo

Buffalo is an attempt to write a ReactJS ActivityPub Client. One should note that it was developed to make bovine usable and fun to use. The main features include:

  • Lots of bugs for interested people to fix.
  • No authentication. It is assumed to be handled by the server elsewhere through cookies.
  • The actor object containing the urls to query is stored in window.config.
  • Filtering eliminating uninteresting stuff, e.g. Announce activities are replaced by the announced object, an object is only shown once. Similarly, only likes of own objects are shown. Announce of own objects are shown. Deletes are not shown.
  • Conversation view. A post is alwasys shown with its full known context. Entries already seen are collapsed. If the post being replied to is unknown, it is being fetched.
  • Basic functionality to author and reply. Support for images is missing (also in bovine).
  • Next conversation can be opened by swiping left.
  • todo: swiping right or a button opens the previous conversation.
  • todo: full support for addressing, i.e. to, cc, bto, bcc
  • todo: can edit the raw json of an object
  • todo: displays create / update
  • todo: fetch FediVerse handle (can probably part of the proxyUrl method in bovine)
  • todo: administer followers, following
  • todo: make work fully offline, i.e. better reconnect behavior of EventSource + queue for posts
  • todo: enable local development
  • todo: rich typing, e.g. automatically turn @helge into a mention of me, similarly for hashtags. One might want some hashtag support in bovine for this, e.g. creating some sort of page displaying stuff with a certain hashtag.
  • todo: markdown preview
  • todo: other formatting support ... I'm sure somebody will want to post restructed text or latex

Development

Development assumes you are able to configure a BovineClient.

npm run watch

starts watching for js changes.

cd local
poetry install
poetry run python -m bovine_proxy.local secret

starts a webserver of port 8000 that proxies the configured bovine Actor through BovineClient.

Screenshot

Screenshot

Technology stack