Urvo is a versatile Discord bot that offers over 65 commands across 8 categories to enhance your Discord experience!
- π· Images: Enhance your mood with a random image of an animal from the available options or an image of coffee to boost your energy!
- β Information: Whether youβre a fan of anime or manga, Digimon or Disney, or just curious about a term, youβll find everything you need here!
- π Memes: Generate memes to enjoy with your friends, using easy prompts!
- πΉοΈ Minigames: The cure for boredom. Beat the bot and have a blast!
- π‘οΈ Moderation: Use these commands to manage the server effectively and efficiently!
- π² Random: An assortment of commands that provide you with random pieces of information such as motivating you with a quote or making you laugh with a joke!
- βοΈ Troopica: Rise to the top of your server by amassing wealth and troops!
- π οΈ Utility: Additional commands that can prove useful to yourself or the server!
A comprehensive overview detailing all available commands can be located within the documentation under the Category Overview section. Each command has a dedicated page detailing its usage, including optional parameters, cooldowns (if any), required user permissions, any associated external APIs, and finally, a demonstration of the command is also provided for clarity.
- π Table of Contents
- π Prerequisites
- β‘ Setup Instructions
- π Available Scripts
- π Testing
- β¨ Acknowledgments
- Β©οΈ License
Ensure that the following dependencies are installed onto your machine by following the Setup Instructions.
- Clone this repository to your local machine.
git clone https://github.com/vikiru/Urvo.git
cd Urvo- Download & install all dependencies.
pnpm install- Setup your
.envfile with the required values.
TOKEN=your-token-goes-here
CLIENT_ID=your-client-id-here
DB_USER=your-user-here
DB_PASS=your-pass-hereTOKEN: This is the token for your Discord bot, retrievable upon the creation of a new application via the Discord Developer Portal.
CLIENT_ID: This is the ID associated with your Discord bot, also accessible via the Discord Developer Portal post-application creation.
DB_USER: This is the username utilized when connecting to the SQLite Database for all 'Troopica' commands. This can be customized as per your preference.
DB_PASS: This is the password used when connecting to the SQLite Database for all 'Troopica' commands. This can be set to any secure string.
- Deploy all commands, binding them to the Discord Bot application you've created previously.
pnpm run deploy- Ensure functionality of 'Troopica' commands by initializing the SQLite database.
pnpm init-dbUpon completion of these steps, the Discord bot can be added to servers and all commands will be operational π
Start the Discord bot.
pnpm startDeploy Discord bot commands.
pnpm deployInitialize SQLite database for Troopica commands.
pnpm init-dbRun tests using Mocha.
pnpm testLint files using Biome.
pnpm lintFormat files using Biome.
pnpm formatRun TypeScript type checks without emitting files.
pnpm typecheckCheck unused dependencies and files with Knip.
pnpm unusedPrepare Git hooks via Lefthook.
pnpm postinstallThe comprehensive suite of tests for this project is housed within the test directory. These tests are primarily designed to verify the functionality and reliability of the external APIs.
The tests can be run with the following command:
pnpm test- discord.js Documentation
- discord.js Guide
- Sequelize Documentation
- Starlight
- Astro
- starlight-links-validator
- starlight-theme-rapide
- Docusaurus
- GitHub Pages
- ESLint
- Prettier
- Shields Badges
- Semantic Release
- Lefthook
- Knip
Additionally, the majority of the commands provided by this bot would not be possible without all of the various APIs that are being used, see API Reference.
The contents of this repository are licensed under the terms and conditions of the MIT license.
MIT Β© 2021-present Visakan Kirubakaran.