config | ||
federation | ||
scripts | ||
tests | ||
.gitignore | ||
LICENSE | ||
README.md | ||
requirements-dev.txt | ||
requirements.txt |
Fediverse Stats
This code gets all peers from mastodon.social. Goal is to collect maximum number of alive fediverse's servers and then query their API to obtain their registered users (if their API provide such information). At the end it post the results to host server bot account.
Dependencies
- Python 3
- Postgresql server
- Mastodon running server.
Usage:
Within Python Virtual Environment:
-
Run
pip install -r requirements.txt
to install needed libraries. -
Run
python fetchservers.py
to add servers to alive servers database. -
Run
python fediverse.py
to query world alive servers API. It gets data from server's nodeinfo. -
Use your favourite scheduling method to set
python fediverse.py
to run twice daily,python fetchservers.py
one time daily,python fediquery.py
to run every minute and `python uptime.py' every minute to publish best fediverse uptime.
18.2.2021 - New feature! Added Lemmy project
12.5.2021 - New feature! Added Wordpress support. The code can now detect Wordpress instances with ActivityPub enabled plugin.
12.5.2021 - New feature! New shinny creation of servers and users graphs.
21.8.2021 - New feature! Added Best Fediverse's servers Uptime publishing bot.
22.10.2021 - New feature! Added Funkwhale support.
26.10.2021 - New feature! Added Socialhome support.
2.3.2022 - Improved server nodeinfo detection.
4.1.2023 - Refactored.
4.1.2023 - Now peers are obtained from mastodon.social's peers list.
5.1.2023 - Added fediquery.py. Allow ask the main bot fediverse about soft
and server
and it replies to the asking user with its data if any.
7.1.2023 - When querying a not found server, we will be added to database if it's alive.
8.1.2023 - Save MAU to database.