Skip to content

SamLolo/Alto

Repository files navigation

Alto | Discord Music Bot

Static Badge wakatime

About The Project

The music bot was originally created as part of my A-Level coursework, and is currently maintained as a passion project. If you'd like to use the bot, you can invite the offical bot here or you can setup the code yourself using the information below! If you'd like to contribute, please do so on the dev branch! To track development, you can visit the Trello Board which is used to track issues, and update progress, as well as future update plans! If you'd like to learn more, you can contact me on Discord @sam_lolo!

Technical Information

Supported Platforms

Alto supports playing audio from a range of sources, including but not limited to:

Sound Cloud Spotify Twitch YouTube

Using The Bot

If you would like to self-host the bot, you will need to setup your own MySQL database, and download lavalink for the bot to work! You can find templates for all the required tables inside the Database folder, allowing for easy setup using the "import data" function of MySQL workbench!

The bot will also require two accounts to be made:

  • An application on the Discord developer portal. This will allow you to create the bot that the code will run through.
    • The bot token will need to be stored in enviroment variables using the key "BOT_TOKEN".
  • An application registered on the Spotify Web API. This provides the Spotify metadata used for multiple commands!
    • The secret will needed to be stored as "SPOTIFY_SECRET" in environment variables, and the client id should be copied into the config.toml file!
    • The bot will work without this, although Spotify playback and commands using the web api will be disabled!

The code does support secondary, developments accounts for both Discord & Spotify, allowing you to use a seperate Discord bot, and Spotify application when developing, which is something I personally use but isn't required! You can toggle development mode inside the config file. The default keys used for the environment variables can also be adjusted using the config file is you would prefer!