WillClient (WC) is a custom Discord API mod that combines elements from Discord.JS and Discord.PY made in Node.JS to solve most of the annoying parts of Discord.JS and possibly welcome users into Node.JS
THIS IS A VERY EARLY VERSION AND I WILL UPDATE IT OVER TIME
for a look at some examples check out the examples folder
for a full look at everything go check out the wiki pages
WillClient simplifies prefix commands and is heavily inspried by the design and functionality of Discord.PY while still being made with Discord.JS
// willclient
wc.command( "ping", async (ctx) => {
await ctx.reply("Pong!");
});
# discord.py
@bot.command()
async def ping(ctx):
await ctx.reply("Pong!")
It also has aliases for commands
// works with avatar or av
wc.command( {name: "avatar", aliases: ["av"]}, (ctx) => {
ctx.reply(wc.author.avatar());
});
It has built in arguments or parameters whatever you prefer to call them that you can use
// tagify <@id> or id
wc.command( "tagify", (ctx, cmd) => {
let user = await wc.fetchUser(cmd.args[0]);
ctx.reply(user.tag);
});
And built in cooldowns
wc.command( {name: "ping", cooldown: "30s"}, (ctx, cmd) => {
if (cmd.onCooldown) return wc.reply("Command is on cooldown!", {deleteAfter: "3s"});
ctx.reply("Pong!");
});
npm i willclient
npm i paigeroid/willclient
WC is built off of Discord.JS so for it to work you need Discord.JS.
const { Client } = require('discord.js');
const client = new Client({
// your stuff here
});
once you have your Discord.JS client you can add in WC
const { WillClient } = require('willclient');
const wc = new WillClient({
client: client,
prefix: "!",
token: token
});
once you have your client set up and working you can run it using either of these:
client.login(token); // normal discord.js
wc.run(token); // optional alternative
This mod is not associated with the creators of Discord, Discord.JS, or Discord.PY this was created out of love for Discord bot development because I wanted to make things easier for people. I do not condone harassment of the original developers and or anyone else involved in the creation of them.
I am not responsible for anything made with this mod and be sure to follow Discord's terms of service and their community guildlines while developing.