1.0.5 ⢠Published 3 years ago
volio v1.0.5
volio
Revolt.js made easier
Documentation
\<Pending Update ~ Coming in approximately 1-4 days>
Install the dependencies (revolt.js)
npm iGet started with volio
const { Client } = require("revolt.js");
const client = new Client();
const volioBot = require('volio');
const volio = new volioBot.client(client);
client.on("ready", async () => {
    console.log(volio.username)
});
client.on("message", async (message) => {
    if (String(message.content) === 'hello') {
        volio.send(message, "world");
    }
});
client.loginBot("BOT_TOKEN_HERE")Send messages
client.on("message", async (message) => {
    volio.send(message, 'message content here')
});A message object must be passed into the first argument.
Getting Information
client.on("message", async (message) => {
    volio.serverId(message);
    volio.serverNsfw(message);
    volio.channelNsfw(message);
    volio.serverCreated(message);
    volio.serverCreatedReadable(message);
    volio.uptime();
    volio.uptimeReadable();
});Note: The code won't send any message or anything with that information. You need to console.log() it or use volio.send() like volio.send(message, volio.uptimeReadable())
React to message
client.on("message", async (message) => {
    if (String(message.content) === 'poll') {
        const poll = await volio.send(message, 'This is a poll');
        volio.react(poll, 'š')
    }
});Cache users
client.on("ready", async () => {
    volio.cacheUsers();
});Embed Builder
const { Client } = require("revolt.js");
const client = new Client();
const volioBot = require('volio');
const volio = new volioBot.client(client);
const embed = new volioBot.embedBuilder()
            .title('hello')
            .description('world')
client.on("message", async (message) => {
    if (String(message.content) === 'hello') {
        volio.send(message, {embeds: [embed.build()]})
    }
});Command Handler
.
āāā index.js
āāā commands
    āāā hello.js
    āāā ping.jsIf your folder structure is like the above example then you can use this code below:
const { Client } = require("revolt.js");
const client = new Client();
const volioBot = require('volio');
const volio = new volioBot.client(client);
const commands = new volioBot.commandHandler({
    folder: '/commands',
    extension: '.js'
})
commands.getCommands();
client.on("message", async (message) => {
    if (String(message.content).startsWith('bot_prefix_here')) {
        commands.run(client, message, 'bot_prefix_here', volio)
    }
});
client.loginBot("bot_token")But if your structure is like the below example then your code needs to be different.
.
āāā index.js
āāā commands
    āāā fun
    ā   āāā joke.js
    ā   āāā meme.js
    āāā bot
        āāā ping.jsconst { Client } = require("revolt.js");
const client = new Client();
const volioBot = require('volio');
const volio = new volioBot.client(client);
const commands = new volioBot.commandHandler({
    folder: '/commands',
    extension: '.js'
})
commands.getCommands({
    folders: true
})
client.on("message", async (message) => {
    if (String(message.content).startsWith('bot_prefix_here')) {
        commands.run(client, message, 'bot_prefix_here', volio)
    }
});
client.loginBot("bot_token")IMPORTANT: If you get an error saying that file doesn't exist then you can manually set the folder like this:
const { Client } = require("revolt.js");
const client = new Client();
const volioBot = require('volio');
const volio = new volioBot.client(client);
const commands = new volioBot.commandHandler({
    folder: '/dirthatdoesnotwork',
    extension: '.js'
})
commands.changeFolder('./commands')
commands.getCommands()If that also doesn't work, then you can try adding a require folder like this:
commands.changeRequireFolder('another-folder-dir')For both cases, the inside of your command file should be like this:
module.exports = {
    name: "joke",
    description: "Sends random joke!",
    run: (client, message, args, userMsg, volio) => {
        volio.send(message, "This is a joke command :P")
    }
}Create a basic help command from command handler
const { Client } = require("revolt.js");
const client = new Client();
const volioBot = require('volio');
const volio = new volioBot.client(client);
const commands = new volioBot.commandHandler({
    folder: './commands',
    extension: '.js'
})
commands.getCommands();
client.on("message", async (message) => {
    if (String(message.content) === 'help') {
        volio.send(message, commands.createBasicHelp('bot_prefix'));
    }
});
client.loginBot("bot_token")