Lightweight (Gotta Go Fast) ActivityPub federator
Switch branches/tags
Clone or download
autogestion add unittests (#16)
* change token key

* add conftest

* update nodeinfo

* test signup

* add target to sig

* debug headers

* user api tests
Latest commit 76d3e9a Nov 27, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
config add unittests (#16) Nov 27, 2018
pubgate add unittests (#16) Nov 27, 2018
requirements add unittests (#16) Nov 27, 2018
storage support extensions (#7) Sep 16, 2018
tests add unittests (#16) Nov 27, 2018
.gitignore support extensions (#7) Sep 16, 2018
LICENSE add skeleton Jun 17, 2018
README.md add unittests (#16) Nov 27, 2018
pubgate.postman_collection.json add unittests (#16) Nov 27, 2018
pubgate.postman_environment.json More activities (#8) Nov 1, 2018
run_api.py Lets Federate (#5) Aug 20, 2018
setup.py support extensions (#7) Sep 16, 2018

README.md

python_version

Asyncronous Lightweight ActivityPub API

Based on little-boxes. Implements both the client-to-server API and the federated server-to-server API. Compatible with Mastodon, Pleroma and microblog.pub

Support extensions (collects blueprints and listeners):

Endpoints

Federated

  • /.well-known/ (webfinger, nodeinfo)
  • /user/ (create, profile, token(password grant OAuth 2), following)
  • /inbox/ (create, list)
  • /outbox/ (create, list, details)

Additional

  • /swagger (api docs)

API documentation:

Run in Postman or swagger docs example

Run

Prerequisites

MongoDB, Python3.6

Shell

git clone https://github.com/autogestion/pubgate.git
pip install -r requirements/base.txt
Only federator
cp -r config/base_sample_conf.cfg config/conf.cfg
To run with extensions (marked * in list )
pip install -r requirements/extensions.txt
cp -r config/extensions_sample_conf.cfg config/conf.cfg
Run
python run_api.py

Tests

python -m pytest tests/