Based on Mau Foronda's fork of Matt Hodges' mastodon_digest.
Rather than rendering a digest page, this powers a bot based on @icymi_law, but for the GLAM community. The bot lives at @icymi_glam@glammr.us.
Prerequisites:
- set up a mastodon bot
- create a mastodon token which can read and write your timeline
- copy
.env.example
to.env
and fill in the credentials with your own
Install dependencies: poetry install
Run tests: poetry run python -m unittest tests
Run the bot from CLI: poetry run python run.py -n 12 -s SimpleWeighted -t lax
- Fork this repository
- Create repository secrets (
Settings
→Secrets/Actions
→New repository secrets
) for:
MASTODON_BASE_URL
: the url of your instance, likehttps://mastodon.social
MASTODON_USERNAME
: your user name, likeGargron
MASTODON_TOKEN
: a token you request in your instance settings underPreferences
→Development
- Adjust the github workflow however you want
- edit
cron
to define how often you want the digest to run - edit the command
python run.py -n 12 -s SimpleWeighted -t lax
with your own preferences for:
-n {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24}
The number of hours to consider (default: 12)
-s {ExtendedSimple,ExtendedSimpleWeighted,Simple,SimpleWeighted}
Which post scoring criteria to use. Simple scorers take a geometric
mean of boosts and favs. Extended scorers include reply counts in
the geometric mean. Weighted scorers multiply the score by an
inverse sqaure root of the author's followers, to reduce the
influence of large accounts. (default: SimpleWeighted)
-t {lax,normal,strict}
Which post threshold criteria to use. lax = 90th percentile, normal
= 95th percentile, strict = 98th percentile (default: normal)
- Enable github actions under
Settings
→Actions/General
, run the action from theActions
tab and when it succeeds publish your digest by going toSettings
→Pages
and selecting to deploy from theroot
of thegh-pages
branch.