# AP test in Flask A basic ActivityPub server written in Flask, that listens to follow requests, based on this tutorial: This is a testing area :), to see if it is possible to use Python and Flask to write a small server that speaks ActivityPub. This repository was sparked from a curiosity in federation and light-weight (static) website making. Operating on the level of the ActivityPub protocol will hopefully give some insights in the way that networks on the Fediverse federate with each other. * What are the minimal requirements to run an Activity Pub server? * How could a static site federate its content with the Fediverse? * How are ActivityPub feeds similar and different from RSS feeds? * How can such server be used? What kind of publishing tools can be imagined? * What ActivityPub "objects" (is that the right term?) can we try out and use, next to the commonly used "Note" object? # Install this prototype When you run this prototype on a server, you could connect to the Fediverse. ## Prepare your server For this you need to following: * a subdomain for the server, for example: `ap.example.com` * a SSL certificate for this domain, for which you could use: `certbot` from * a reverse proxy configuration, relaying the subdomain to the Flask application running on port `5010` (by default) Once this is set up, you can install this prototype. ## Install the prototype Make a virtual environment: `$ python3 -m venv FOLDERNAME` Activate the environment: `$ source FOLDERNAME/bin/activate` Install the dependencies: `$ pip install -r requirements.txt` Run the Flask application: `$ python3 run.py`