Flesh out readme

This commit is contained in:
Holly McFarland 2022-01-31 14:17:28 -05:00
parent 1381b9f8f8
commit f88fab0431
4 changed files with 48 additions and 1 deletions

View File

@ -1,3 +1,33 @@
# mtg-card-lookup
A fediverse bot to look up Magic: The Gathering cards
A fediverse bot to look up Magic: The Gathering cards.
To use, mention the bot with a message that contains at least one Magic card name wrapped in either [[square brackets]] or {{curly braces}}. It will search Scryfall for the card and reply with the result. Alternatively, follow the bot, and it will follow you back. Any posts it sees with that syntax in its home timeline will also be processed.
See it in action [here](https://botsin.space/@mtgcardlookup)!
![](example-lotus.png)
## Features
- Automatically keeps its follower and following lists synced
- Follows back accounts instantly, unfollows every 5 minutes (API restriction)
- If four or less cards are requested, includes images of each card with Oracle text in the description
- Double Faced Card images are handled by combining both faces into a single image
- Uses fuzzy searching to correct shortenings where possible
- Replies at the same privacy level as it was called with, or unlisted, whichever is more restrictive
- Includes pinned status management (see "Installation and Setup")
- Unpins all current statuses, then posts a pre-written thread and pins each new status in reverse order
![](example-garruk.png)
## Installation and Setup
- Clone this repository and create a python environment however you like to
- Install dependencies with `pip install -r requirements.txt`
- Install and enable the included mtgcardlookup.service with systemd, replacing the `ExecStart`, `WorkingDirectory`, and `User` values with those for your system
- [OPTIONAL] Write an introduction thread to be pinned
- Create a new file called pinned_thread.txt
- Write each status of the introduction thread, separated by `\n-----\n`
- Run `./mtgcardlookup --update-pins`. The thread will be posted and pinned
- In the future, you can modify pinned_thread.txt and rerun the command. The existing thread will be unpinned and the modified one will be posted and pinned.

BIN
example-garruk.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 222 KiB

BIN
example-lotus.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 402 KiB

17
mtgcardlookup.service Normal file
View File

@ -0,0 +1,17 @@
[Unit]
Description=MTG Card Lookup Service
After=multi-user.target
StartLimitIntervalSec=0
[Service]
Type=idle
Restart=on-failure
RestartSec=5s
ExecStart=/PATH/TO/LOCAL/REPO/mtgcardlookup.py
WorkingDirectory=/PATH/TO/LOCAL/REPO/mtg-card-lookup/
User=YOUR_USERNAME
Environment=PYTHONUNBUFFERED=1
[Install]
WantedBy=multi-user.target