Testify
Advanced all-in-one Discord bot produced using Discord.js and with over 50 prefix & 150 slash commands, crammed with tons of features and regularly updated and maintained.
Install / Use
/learn @Kkkermit/TestifyREADME
To test out Testify, be sure to invite him to your server by clicking here
[!CAUTION] Never share or commit your
.envfile or any of its values! These contain sensitive information including your bot token, MongoDB credentials, and API keys that could be used to compromise your systems or incur unwanted charges if leaked. Always add.envto your.gitignorefile.
Table of Contents
- Features
- Compatibility
- Installation
- Usage
- Command Categories
- Setting-Audit-Logs
- Technical Features
- Contributors
- Support
- License
Features
Moderation Tools
- Complete Moderation Suite: Ban, kick, timeout, warn, and mute functionality
- Auto-moderation: Filter profanity, spam, and inappropriate content
- Audit Logging: Comprehensive logging of all moderation actions
- Ticket System: Create and manage support tickets with transcripts
Entertainment & Fun
- Music System: Play music from YouTube, Spotify, and SoundCloud with queue management
- Leveling System: XP and ranking system with customizable rewards
- Mini-games: Variety of games including RPS, coinflip, 8ball, and more
- Meme Commands: Random memes, jokes, and fun interactions
Information & Utility
- User Info: Detailed user information with profile cards
- Server Info: Server statistics and information
- Role Info: Detailed role information including permissions
- Profile System: Create and customize user profiles
Integration & API Features
- Valorant Integration: View skins, store, and player info
- Instagram Notifications: Get notified of new posts from Instagram accounts
- Spotify Integration: Advanced Spotify tracking and integration
- Weather Information: Get weather forecasts for any location
Customization
- Custom Prefix: Set a custom prefix for your server
- Custom Embeds: Create and customize rich embeds
- Announcement System: Create professional announcements
- Thread Management: Create and manage threads
Compatibility
System Requirements
| Operating System | Support Status | Notes | |------------------|---------------|-------| | Windows 11 | ✅ Full Support | Recommended for development | | Windows 10 | ✅ Full Support | Recommended for development | | macOS | ✅ Full Support | Tested on macOS Ventura+ | | Linux (Ubuntu) | ✅ Full Support | Tested on Ubuntu 20.04 LTS+ | | Linux (Debian) | ✅ Full Support | Tested on Debian 11+ | | Linux (CentOS) | ✅ Full Support | Tested on CentOS 8+ | | Linux (Fedora) | ✅ Full Support | Tested on Fedora 34+ |
Node.js Support
| Node.js Version | Support Status | Notes | |-----------------|---------------|-------| | v18.13.0+ | ✅ Supported | Minimum required version | | v19.x | ✅ Supported | | | v20.x | ✅ Supported | Recommended for best performance | | v21.x | ✅ Supported | Latest features |
[!IMPORTANT] If you're struggling to use a certain node version, I'd suggest either downgrading or upgrading your version using nvm To install nvm, please follow this link.
Installation
- Download Node.js.
- Download Visual Studio Code.
Usage
-
Project Setup
-
Fork the Github project :
-
Click the
Codebutton. From the drop-down that appears, clickDownload ZIPto download the entire repository as a ZIP folder. -
Extract the files to a new folder and open it with Visual Studio Code.
-
-
Obtain Discord Bot Token
-
Sign in to Discord Developer Portal.
-
Create a bot :
- Enter the left side
Applications. - Click
New Applicationin the upper right corner and enter the name of the bot. After confirmation, enter the new page. - Click on the left side
Bot. - Enable all intents listed under
Privileged Gateway Intentsand clickSave Changes. - View and copy the token by clicking the
Reset Tokenbutton.
- Enter the left side
-
Set up OAuth2 :
- Click on
OAuth2in the left column. - Click on
URL Generatorin the left column. - In the right column, select
botandapplications.commandsunderSCOPES. - Scroll down and select
AdministratorunderBOT PERMISSIONS. - Copy the URL at the bottom and paste it into your browser.
- Choose the server you want to add the bot to and click
Continue>Authorize.
- Click on
-
-
Obtain MongoDB Connection String
- Sign up / Sign in to MongoDB.
- Choose your preferred cloud database plan.
- Customize the cluster settings to your preference and click
Create Cluster. - Navigate to the
Network Accesspage, clickAdd IP Addressand selectAllow access from anywhere. - Navigate back to the
Databasepage and clickConnect. - Create a
database user, clickChoose a connection methodand selectConnect your application. - Copy your connection string and replace
<password>with the password for the database user that you created earlier.
-
Setting up the env file
If you go along with this, you can ignore the parts in the
Project Executionthat explain how to generate and fill in the.env- For easy setup of the env files, (
.env&.development.env) you can run the commandnpm run setup-env:prod - Once you've ran the command, it generates a script in the console
- You need to then fill out the fields in the console. Fields marked with the text "Required" are you required fields and you need to fill those ones in. The script will not continue if you ignore to fill in those fields.
- Once you've filled in the field, it will write those fields into and generate the
.env. - Alternatively, you can ignore this and fill in the fields yourself by viewing the
.example.envfile. - If you then want to setup the
.env.developmentfile, you can run the commandnpm run setup-env:devand follow the steps above again.
- For easy setup of the env files, (
-
Project Execution
- Rename the filed named
example.envto.env - Navigate to the
Botpage on the Discord Developer Portal and clickReset Token. Afterwards, create a.envfile within the root directory. - Paste your bot token into the
tokenvariable inside the.envfile. - Paste your MongoDB connection string into the
mongodbvariable inside the.envfile. - Navigate to the
OAuth2page and copy theCLIENT ID. - Paste your client ID into the
clientidvariable inside the.envfile. - Navigate to your discord server, enable developer mode and right click the dropdown beside
- Rename the filed named
Related Skills
feishu-drive
335.2k|
things-mac
335.2kManage Things 3 via the `things` CLI on macOS (add/update projects+todos via URL scheme; read/search/list from the local Things database)
clawhub
335.2kUse the ClawHub CLI to search, install, update, and publish agent skills from clawhub.com
SchoolAnalytics
Skill: IB MYP Analytics & Grading Activation Trigger - Any task involving grade calculations, student flagging, or analytics dashboarding. - Questions about Criteria A, B, C, or D. Knowledge
