This is a Discord bot that comforts you when you are lonely, is there for you in the middle of the night,
keeps you hydrated, and does all of your bidding like a sexy butler with a true passion for what they do.
More usefully described, Friendo is a multi-purpose Discord bot that provides a unique assortment of tools and entertainment to users in your server.
If you are a Friendo user, consider utilizing the official Friendo Website for extra capabilities of the hosted version of the bot.
To get a bot token go to Discord Developer Portal, create a new application and add a bot.
-
git clone <url>
-
Create an imgflip api account
-
Create a Ticketmaster api account
-
Create a Last.fm api account
-
Create a Open Weather api account (a free account works for this)
-
Get your AoC session cookie, see how - wimglenn/advent-of-code-wim#1
-
Create a file
bot.env
in the root project directory and fill it out using the example below -
docker-compose pull bot
-
docker-compose up --build -d
# bot.env
FRIENDO_TOKEN = <your token here>
MEME_USERNAME = <your imgflip api username>
MEME_PASSWORD = <your imgflip api password>
EVENT_API_KEY = <your ticketmaster api key>
MUSIC_TOKEN = <your Last.fm api key>
WEATHER_TOKEN = <your open weather token>
AOC_SESSION_COOKIE = <your advent of code session cookie>
FRIENDO_API_USER = <your friendo api username>
FRIENDO_API_PASS = <your friendo api password>
FRIENDO_API_URL = <friendo api url>
AOC_SESSION_COOKIE = <your aoc session cookie>
AOC_JOIN_CODE = <aoc join code>
- You can use the above docker method to run in a dev environment or the following pipenv (if using pipenv
the above environment variables must be added to the system or a file named
.env
).*
# Clone the repository on the develop branch
$ git clone -b "develop" https://github.com/fisher60/friendo-bot.git
# Navigate to the repository directory
$ cd friendo-bot
# Install pipenv through pip or your package manager
$ pip install pipenv
# Install the development and project dependencies
$ pipenv sync --dev
# Install pre-commit hooks
$ pipenv run pre-commit install
# Optionally: run pre-commit hooks to initialize them
$ pipenv run pre-commit run --all-files
# Enter the pipenv shell
$ pipenv shell
# Run the bot
$ pipenv run python -m bot