volio

1.0.5 • Public • Published

volio

Revolt.js made easier

Documentation

<Pending Update ~ Coming in approximately 1-4 days>

Install the dependencies (revolt.js)

npm i

Get 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.js

If 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.js
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({
    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")

Support me on Patreon - Check out my socials

Package Sidebar

Install

npm i volio

Weekly Downloads

3

Version

1.0.5

License

MIT

Unpacked Size

12.5 kB

Total Files

3

Last publish

Collaborators

  • axoraxdev