discord-antiraid

Discord.js extention library for protect discord servers against Raids

Usage no npm install needed!

<script type="module">
  import discordAntiraid from 'https://cdn.skypack.dev/discord-antiraid';
</script>

README

Discord.js extention library for protect discord servers against Raids

downloadsBadge versionBadge


discord GitHub license

- Installation:


npm i discord-antiraid

Supported Events: (If you want to Add your Own Events, Use AntiRaid Class Methods in the documentation or follow Example here)

    channelCreate
    channelDelete
 
    roleCreate
    roleDelete
 
    guildBanAdd
    guildMemberRemove

Create AntiRaid: (Example: here)

const {AntiRaid} = require('discord-antiraid');

const antiraid = new AntiRaid(client, {
    rateLimit: 3,
    time: 10000,
    ban: true,
    kick: false,
    unrank: false,
    exemptMembers: [],
    exemptRoles: [],
    exemptEvent: [],
    reason: "discord-antiraid"
})

Using Database (Example with quick.db): (Example: here)

const {AntiRaid} = require('discord-antiraid');
const db = require('quick.db');


//Extend AntiRaid class for edit save(id: String, cooldown: []) and getOptionsFromDB(id: String) with your db methods

class AntiRaidWithDB extends AntiRaid {

    //If the bot is public on several guilds and each guilds must have its own antiraid configuration

    async getOptionsFromDB(id) {
        return db.get(`antiraid_${id}`)
    }
}
const antiraid = new AntiRaidWithDB(client, {
    rateLimit: 3,
    time: 10000,
    ban: true,
    kick: false,
    unrank: false,
    exemptMembers: [],
    exemptRoles: [],
    exemptEvent: [],
    reason: "discord-antiraid"
})

Use discord-antiraid events:

antiraid.on("punish", (member, reason, sanction) => {
    member.guild.channels.cache.get("848500695506223107").send(`${member.user.username} got banned for raid attempt`)
})

Get package version:

const {version} = require('discord-antiraid');
console.log(version);
//Output: 2.0.0

- Changelog:

See Changelog here

- Contributors:

- Special Credits:

Thanks to Androz with his repo discord-giveaways for doc generator and typing example

Thanks to Sayrix for making the logo and the banner

Thanks to rh for quickdb example

- License:

Licensed under the MIT license.