miso-bot icon indicating copy to clipboard operation
miso-bot copied to clipboard

:robot: Discord bot with too many features

Miso Bot

Code style: black Codacy Badge DeepSource Discord Patreon


A discord bot with almost 100 commands and features, including but not limited to:

  • LastFM Integration
  • Melon charts
  • Youtube search
  • Twitter image extractor
  • Instagram image extractor
  • Moderation (ban, mute, etc)
  • Logs bans, leaves, joins, messages
  • Server and user information
  • Levels and XP leaderboards
  • Customizable profiles
  • Server activity graph
  • Minecraft server status
  • Starboard
  • Voting channels
  • Fishing
  • DuckDuckGo bangs
  • Colors and color palettes
  • Create Gfycats and Streamables
  • Gfycat search
  • xkcd
  • Horoscope
  • Weather
  • Keyword notifications
  • Rolepicker
  • Typing tests and Typeracer
  • Papago Naver translator
  • Google Translate
  • Wolfram alpha
  • Reminders
  • Custom commands
  • Changeable prefix
  • OPGG
  • Cryptocurrency data
  • Kpop idol database

...and much more. Visit https://misobot.xyz for more detailed overview of the features.

Star History

Star History Chart

Deployment using docker

First copy/rename .env.example to .env and fill it with your own keys. Everything else should be handled by the docker-compose.yml

$ docker-compose up --build

Deploying locally

The dependencies are compiled using pip-tools from requirements.in and dev-requirements.in. the dev file just adds linters and pre-commit.

Installation using pip-tools:

$ pip-sync requirements.txt dev-requirements.txt

Installation using pip:

$ pip install -r requirements.txt -r dev-requirements.txt

You need to have a mysql/mariadb database running, then run the migrations in sql/init/.... After this, you can run the bot:

$ python main.py

Note: Running this way, the HTML rendering will not work as it relies on an external docker container. You will have to run that separately.