Skip to content
This repository was archived by the owner on Oct 5, 2024. It is now read-only.

neurondevelopment/ApplicationBot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Contributors Forks Stargazers Issues MIT License ko-fi


Logo

Store Bot

Easy to use application bot, with logging, easy moderation and high customisability.

About The Project

The application bot is a highly customisable bot, with easy to use applications, using Discord's dropdowns, buttons and slash commands to create an easy to use, interactive experience for the user. With automatic inviting, role granting, logging, and restriction to specific roles, this bot should be perfect for all users looking to recruit new people.

Some of the features:

  • Easily accept / deny application through discord buttons
  • Create one-time invites on acceptance to invite a user to a discord server
  • Individually open / close applications
  • Easy to customise & setup
  • Creates dedicated channel per application, giving perms to those you specify
  • Customisable accept / deny messages
  • Lots of logging
  • Easily restrict commands

Getting Started

Prerequisites

This is an example of how to list things you need to use the software and how to install them.

  • NodeJS >= v16.13.0
  • npm
    npm install npm@latest -g

Installation

  1. Clone the repo or download the files

    git clone https://github.com/neurondevelopment/CoreBot.git
  2. Install NPM packages

    npm install
  3. Fill in the information in config.json, the following fields are required for the bot to start

    token serverID
  4. Invite or reinvite the bot with the following link, replace YOURCLIENTID with the Client ID of your bot

    https://discord.com/api/oauth2/authorize?client_id=YOURCLIENTID&permissions=8&scope=applications.commands%20bot
    
  5. Starting the bot

    node .

    OR

    node index.js

Permissions

By default, every command is open for everyone, which is maybe not ideal for some commands. In each command file, there is an array called perms, it looks like perms: [] Inside, you can add either a role ID or a permission to use that command, a role id looking like "843429294848081920", or a permission looking like "Administrator"

The final array should look something like

perms: ["843429294848081920", "ManageMessages"]

This will allow anyone with the role that has the ID 843429294848081920, or anyone with the manage messages permission to run this command

Creating Applications

Listings can be found in /db/applications.json

"testapplication": { // Name of the application
        "enabled": true, // Set true or false to allow users to apply for this
        "description": "test description", // Description shown in the dropdown menu, max 100 CHARS (not words)
        "emoji": "🤡", 
        "questions": ["Question 1", "Question 2", "Question 3"], // Questions, max 50 CHARS per question, discords limits not mine. There is a limit of 25 questions
        "discord": "none", // Enter discord ID for auto invites when a user is accepted
        "roles": ["RoleID"], // Roles to grant user if they are accepted, specify role IDs
        "restricted": [], // Restrict application to certain roles, specify their role IDs
        "category": "Channel ID", // Category for applications to be sent to to be approved / denied
        "acceptMessage": "Your application for **{[APPLICATION]}** has been accepted", // Message sent to user if they are accepted. Use {[APPLICATION]} to autofill the name of the application
        "denyMessage": "You have been denied from **{[APPLICATION]}**\nReason: `{[REASON]}`"/ Message sent to user if they are accepted. Use {[APPLICATION]} to autofill the name of the application {[REASON]} to autofill the reason
    },

License

Distributed under the MIT License. See LICENSE for more information.

About

Easy to use application bot, with logging, easy moderation and high customisability.

Resources

License

Stars

Watchers

Forks