Put your website on the Fediverse thanks to your RSS/Atom feed
Project description
f2ap (Feed to ActivityPub) is a web application that uses the RSS/Atom feed of your website to expose it on the Fediverse through ActivityPub.
How to use it
Prerequisite
The only prerequisite to use f2ap is that your website provides an RSS or Atom feed. If you don't have one yet, you might want to make it first, as it is a Web standard that allows your visitors to stay in touch with your content with any compatible application. Plus, it is very easy to implement.
Installation
With PyPI
Required: Python 3.9+
Install the f2ap
package:
pip install f2ap
The application will be runnable with the f2ap
command.
You will need to use a runner like systemd to start it as a service.
Docker
Required: Docker
Grab the image from Docker Hub:
docker pull deuchnord/f2ap
You can get a specific version with the following syntax: deuchnord/f2ap:<tag>
, where tag is one of the following (i
, j
and k
being numbers):
latest
: the last version (default)i
: the last version of thei
major versioni.j
: the last version of thei.j
minor versioni.j.k
: the versioni.j.k
unstable
: the last commit in the Git history. It is heavily discouraged to use it in production, as it can have bugs, crash, put fire in your house or, worse, kill your kitten.
Docker-Compose
If you want to use f2ap through Docker-Compose, check the docker-compose.dist.yml
for an example of configuration.
Configuration
To make f2ap work, you will need to write a configuration file that will define its behavior.
It is a boring simple TOML file. You can find a self-documented file in config.dist.toml.
If you run f2ap with Docker, make sure to name it config.toml
and to place it in the /data
folder.
Configuring the server
To provide a better integration to your website, you are encouraged to add some configuration lines to your server. This will ensure the social applications will correctly discover your website's ActivityPub API.
Nginx
Edit your configuration file and add the following lines to your server
section.
Don't forget to adapt:
- the IP address on the
proxy_pass
lines to match f2ap's configuration; - the
<username>
part in the lastlocation
to match the username of your actor.
server {
## ...
# Propagate the domain name to f2ap
proxy_set_header Host $host;
# The webfinger allows the social applications to find out that your website serves an ActivityPub API.
location /.well-known/webfinger {
proxy_pass http://127.0.0.1:8000;
}
location / {
# Match any request asking for an ActivityPub content
if ( $http_accept ~ .*application/activity\+json.* ) {
proxy_pass http://127.0.0.1:8000;
}
# Match any request sending an ActivityPub content
if ( $http_content_type = "application/activity+json" ) {
proxy_pass http://127.0.0.1:8000;
}
}
# Exposes the avatar and the header of the profile
# Change the <username> here with the username of the actor you expose (for instance: blog)
location ~ /actors/<username>/(avatar|header) {
proxy_pass http://127.0.0.1:8000;
}
## ...
}
Limitations
Because f2ap uses your RSS/Atom feed to connect your website to ActivityPub, the time before a new entry pops on the Fediverse will depend on the refresh frequency. You might want to choose a frequency that matches your update regularity.
If this behavior is a problem, f2ap is probably not the right solution for you, and you might need to integrate ActivityPub to your application on your own.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file f2ap-0.1.0.tar.gz
.
File metadata
- Download URL: f2ap-0.1.0.tar.gz
- Upload date:
- Size: 27.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.3.1 CPython/3.11.1 Linux/5.15.0-1024-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 733ca10f5554c498ff52f28656f8a681adbdf61ad7c65c65706ef225f3925a06 |
|
MD5 | 27bb848a44e2f353f5103d154ef18974 |
|
BLAKE2b-256 | 1feb5939b7fdc0a2776e3918885d219607ac1a15028614b319dd527b87788069 |
File details
Details for the file f2ap-0.1.0-py3-none-any.whl
.
File metadata
- Download URL: f2ap-0.1.0-py3-none-any.whl
- Upload date:
- Size: 29.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.3.1 CPython/3.11.1 Linux/5.15.0-1024-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4be920fbba96837f26eba7e6315cd042a8abfdb01de1143243cf35fd1519b647 |
|
MD5 | d4ba079ad7afe18cc7d6f4882362f02c |
|
BLAKE2b-256 | 599aa5800f2c911ce7b5033717d8d482d97e8833000c3c30a40f4e3afb524ed2 |