https://github.com/go-ap/fedbox
Reference implementation of an ActivityPub service using go-ap packages (mirror repository)
https://github.com/go-ap/fedbox
activitypub
Last synced: 9 months ago
JSON representation
Reference implementation of an ActivityPub service using go-ap packages (mirror repository)
- Host: GitHub
- URL: https://github.com/go-ap/fedbox
- Owner: go-ap
- License: mit
- Created: 2019-05-03T20:07:29.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2025-05-05T10:54:09.000Z (9 months ago)
- Last Synced: 2025-05-11T04:56:42.098Z (9 months ago)
- Topics: activitypub
- Language: Go
- Homepage: https://federated.id
- Size: 2.41 MB
- Stars: 148
- Watchers: 8
- Forks: 8
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# FedBOX
[](https://raw.githubusercontent.com/go-ap/fedbox/master/LICENSE)
[](https://builds.sr.ht/~mariusor/fedbox)
[](https://goreportcard.com/report/github.com/go-ap/fedbox)
FedBOX is a simple ActivityPub enabled server. Its goal is to serve as a reference implementation for the rest of the [GoActivityPub](https://github.com/go-ap) packages.
It provides the base for some of the common functionality that such a service would require, such as: HTTP handlers and middlewares, storage and filtering etc.
The current iteration can persist data to [BoltDB](https://go.etcd.io/bbolt), [Badger](https://github.com/dgraph-io/badger), [SQLite](https://gitlab.com/cznic/sqlite) and directly on the file system, but I want to also add support for PostgreSQL.
## Features
### Support for C2S ActivityPub:
* Support for content management actitivies: `Create`, `Update`, `Delete`.
* `Follow`, `Accept`, `Reject` with actors as objects.
* Appreciation activities: `Like`, `Dislike`.
* Reaction activities: `Block` on actors, `Flag` on objects.
* Negating content management and appreciation activities using `Undo`.
* OAuth2 authentication
### Support for S2S ActivityPub
* Support the same operations as the client to server activities.
* Capabilities of generating and loading HTTP Signatures from requests.
## Installation
See the [INSTALL](./doc/INSTALL.md) file.
## Further reading
If you are interested in using FedBOX from an application developer point of view, make sure to read the [Client to Server](./doc/c2s.md) document, which details how the local flavour of ActivityPub C2S API can be used.
More information about FedBOX and the other packages in the GoActivityPub library can be found on the [wiki](https://man.sr.ht/~mariusor/go-activitypub/index.md).
## Contact and feedback
If you have problems, questions, ideas or suggestions, please contact us by posting to the [mailing list](https://lists.sr.ht/~mariusor/activitypub-go), or on [GitHub](https://github.com/go-ap/fedbox/issues). If you desire quick feedback, the mailing list is preferred, as the GitHub issues are not checked very often.