The new era of Discord Bots? Myra v3

🥳 Myra v3


Over a year with pretty much no updates. However today I want to proudly release the third version of Myra.
So Myra

  • operates now fully with slash commands, you can't use the old commands anymore.
  • has a brand-new dashboard, where everything can be set up. There are no administrator commands for setting things up

📃 Changelist


🤖 Bot updates

  • switched to interactions
  • Myra uses now the language set in the server settings
  • after leaving a server, the member data gets deleted after one week
  • improved error system, errors are now trackable
  • Images support now all UTF-32 characters
  • merged info user and info member
  • made info commands more compact
  • removed unused commands
    • removed avatar
    • removed meme
    • removed some useless help commands
  • added reminder list
  • added reminder remove
  • added reminder daily
  • balance got renamed to wallet
  • economy got renamed to balance
  • removed muting command because of discords timeout feature
  • increased the change of winning using fish
  • improved xp spam system
  • made level-up message toggable
  • added option to automatically delete level up messages after 5 seconds
  • redesigned level up images
  • Improved colour choice on custom backgrounds for rank cards
  • replaced reaction roles with buttons
  • added start balance
  • added tictactoe command
  • added slots command
  • added rock paper scissors game
  • Added support for multiple welcome roles
  • Added support for single spotify tracks
  • Made track loading faster
  • track command displays now an image
  • Merged shuffle, skip, clear and queue with the queue command
  • Added new, better avatars

🌐 Website updates

  • Added ddos protection
  • website font scales now with system font
  • redesigned custom badges
  • updated terms of service
  • added more security to the website
  • added ssl
  • user data is no longer accessible for the client
  • made teams page update automatically
  • added error pages
  • added reviews
  • added announcements
  • added profile pages
  • added daily streak leaderboard
  • added global level leaderboard
  • redid embed builder
    • added live preview
    • added option to add an author
    • the colour is now changeable
    • added drag and drop to images
  • added modules
    • added settings module
      • you can now toggle how translations behave
      • toggle suggestions and select a channel
    • added economy module
    • added leveling module
    • added button roles module
    • added notifications module
      • added YouTube notification settings
      • added Twitch notification settings
    • added welcome module
      • added welcome image previewer
      • moved autoroles to welcome tab
  • Limited everything to prevent abusing

⭐ Myra

  • self hosted database
  • rewrote everything lol
  • and a ton of behind the scene changes (:

⚙️ The background


🤖 The discord bot

The rewrite started because of Discords announcement of slash commands. I had to redo the entire commands handler. At the time the announcement was very new and slash commands had still a lot of non-convenient things which I wasn't really a fan of. Because I was interested in Kotlin and was unhappy with the current code anyway, I decided to recode the discord bot in Kotlin. I only did this because the announced deadline for slash commands (the message intent) was pretty far away. So during the rewrite I switched to a new language. Still jvm but a bit more pretty i guess :).

🌐 The website

Even though I was proud of my static plain html, css, js side I knew i had to redo it too. The limit of slash commands was way too low to add all administrator commands as slash commands. And I think every good bot has a Web-dashboard. To be honest I hate web development but there was no way around it. After some research I decided to use a Javascript framework Svelt. It looked the closest to htm which I liked. With this the rewrite of the website started in parallel.