{"id":14983245,"url":"https://github.com/captaintsu/discordjs-v14-handler-by-captain","last_synced_at":"2026-02-09T01:01:19.662Z","repository":{"id":253770105,"uuid":"844467994","full_name":"CaptainTsu/DiscordJS-v14-Handler-By-Captain","owner":"CaptainTsu","description":"A powerful and customizable command handler for Discord.js v14, made to be both flexible and efficient. Created by Captain (@toorecap - me ofc),  this handler supports message and slash commands, event handling, and advanced bot functionality with ease","archived":false,"fork":false,"pushed_at":"2024-08-30T12:34:34.000Z","size":158,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-09T11:23:57.970Z","etag":null,"topics":["bot-template","discord","discord-api","discord-bot","discord-bot-handler","discord-bot-template","discord-bots","discord-command-handler","discord-js","discord-js-v14","discord-v14","discordbot","discordhandler","discordjs","discordjs-bot","discordjs-v14","discordjsv14","javascript","v14","v14-discord-bot-template"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/CaptainTsu.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-08-19T10:20:37.000Z","updated_at":"2024-12-10T18:06:48.000Z","dependencies_parsed_at":null,"dependency_job_id":"d4d74b91-f3f6-42a3-b185-319869ea7d8f","html_url":"https://github.com/CaptainTsu/DiscordJS-v14-Handler-By-Captain","commit_stats":{"total_commits":45,"total_committers":1,"mean_commits":45.0,"dds":0.0,"last_synced_commit":"fc19bd8ad7188795c1fd19f8a514e1b299ff6c48"},"previous_names":["captaintsu/discord-v14-handler-captain"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/CaptainTsu/DiscordJS-v14-Handler-By-Captain","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CaptainTsu%2FDiscordJS-v14-Handler-By-Captain","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CaptainTsu%2FDiscordJS-v14-Handler-By-Captain/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CaptainTsu%2FDiscordJS-v14-Handler-By-Captain/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CaptainTsu%2FDiscordJS-v14-Handler-By-Captain/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/CaptainTsu","download_url":"https://codeload.github.com/CaptainTsu/DiscordJS-v14-Handler-By-Captain/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CaptainTsu%2FDiscordJS-v14-Handler-By-Captain/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266561515,"owners_count":23948632,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-22T02:00:09.085Z","response_time":66,"last_error":null,"robots_txt_status":null,"robots_txt_updated_at":null,"robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bot-template","discord","discord-api","discord-bot","discord-bot-handler","discord-bot-template","discord-bots","discord-command-handler","discord-js","discord-js-v14","discord-v14","discordbot","discordhandler","discordjs","discordjs-bot","discordjs-v14","discordjsv14","javascript","v14","v14-discord-bot-template"],"created_at":"2024-09-24T14:06:57.427Z","updated_at":"2026-02-09T01:01:19.410Z","avatar_url":"https://github.com/CaptainTsu.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"---\n# Discord.js v14 Command Handler - By [Captain](https://guns.lol/tooredcap)\n\n🚀 **A powerful and customizable command handler for Discord.js v14, made to be both flexible and efficient.**  \n👨‍💻 Created by **Captain** [@toorecap](https://discord.com/users/565854774612983808) *(me ofc)*, this handler supports message and slash commands, event handling, and advanced bot functionality with ease.\n\n---\n\n⭐️ **If you enjoyed the project, please give it a star by clicking the button at the top right of the page.**  \n🙏 **Thank you!**\n\n---\n\n## Jump To\n\n- [Features](#features)\n- [Preview](#preview)\n- [Configurations](#configurations)\n- [Contributing](#contributing)\n- [Support](#support)\n- [Made By](#made-by)\n- [License](#license)\n\n---\n\n## Features\n\n- **Command Handler**\n  - Supports both **slash commands** and **message commands**.\n  - Organize commands in subfolders to define categories.\n  - Categories include: (can create more categories)\n    - **Fun** (for both message and slash commands)\n    - **Info** (for both message and slash commands)\n  - Example Commands:\n    - **Info Category:**\n      - `help` - Shows all bot's commands.\n      - `ping` - Check the bot's latency.\n      - `uptime` - Displays the bot's uptime.\n    - **Fun Category:**\n      - `pp` - A very advanced command with special features.\n\n- **Extensive Configuration**\n  - A comprehensive config file with numerous customizable options.\n\n- **Event Handling**\n  - Easily manage events with a structured event handler.\n\n- **Advanced Console Logs**\n  - Uses **chalk** for colorful and easy-to-read logs.\n  - Enhanced logging with **boxen** for better visibility during bot operations.\n\n---\n## Preview\n\u003ca\u003e\n  \u003cimg src=\"https://media.discordapp.net/attachments/1176815431865090159/1275117762091421738/image_2024-08-19_211007567.png?ex=66c4b975\u0026is=66c367f5\u0026hm=2a3ea8bd4b1ff2fd3d0ee282e8f7322fedb6980a4723e6b8e4d1535fa9d44195\u0026=\u0026format=webp\u0026quality=lossless\u0026width=618\u0026height=362\" alt=\"Preview1\"\u003e\n\u003c/a\u003e\n\u003chr style=\"display: inline-block; width: 10px; height: 100px; border: 1px solid #ccc; margin: 0 10px;\"\u003e\n\u003ca\u003e\n  \u003cimg src=\"https://media.discordapp.net/attachments/1176815431865090159/1275115453806542868/v14_handler.gif?ex=66c4b74e\u0026is=66c365ce\u0026hm=e44dbadf3aa039021cf725153df86c76ed65209ba03f5f1e168e5846c2f336e5\u0026=\u0026width=675\u0026height=635\" alt=\"Preview2\"\u003e\n\u003c/a\u003e\n\n\n---\n## Configurations\nCustomize the behavior of the command handler by adjusting the configuration options in [config.js](./config/config.js). Below is a summary of each configuration category and its options:\n\n ### General Configs\n ```js\n  // General Configs\n  module.exports = {\n    prefix: `$`,\n    clientId: ``, // bot id\n    token: ``, // bot token\n    ownerID: ``, // your id (cannot add multiple)\n    guildId: '', // Enter a guild ID for guild-specific commands, or leave it blank to load slash commands globally.\n```\n  - **`prefix`**: The prefix used to trigger commands (default: `$`).\n  - **`clientId`**: Your bot's ID (required to run the bot).\n  - **`token`**: Your bot's token (required to run the bot).\n  - **`ownerID`**: Your Discord user ID (only one ID allowed).\n  - **`guildId`**: Your Server's ID for Server specific commands, or leave it blank to load slash commands globally.\n\n### Developer Team\n```js\n    developerTeam: {\n      memberIDs: [], // add the user IDs of the developer team (can add multiple)\n      roleIDs: [],   // add the role IDs of the developer team (can add multiple)\n    },\n```\n  - **`developerTeam.memberIDs`**: An array of user IDs who are part of the developer team (multiple IDs allowed).\n  - **`developerTeam.roleIDs`**: An array of role IDs assigned to the developer team (multiple IDs allowed).\n\n### Bot Embed Configs\n```js\n    // Bot Embed Configs\n    EmbedConfig: {\n      embedcolor: `#9b59b6`, // default embed color\n    },\n```\n  - **`EmbedConfig.embedcolor`**: Default color for embeds (default: `#9b59b6`).\n\n### Cooldown Configs\n```js\n    // Cooldown Configs\n    CooldownConfig: {\n      defaultCooldown: 5, // default cooldown for commands (in seconds)\n      autoDeleteCooldownMsg: 10 // auto delete the cooldown response (in seconds)\n    },\n```\n  - **`CooldownConfig.defaultCooldown`**: Default cooldown for commands in seconds (default: 5 seconds).\n  - **`CooldownConfig.autoDeleteCooldownMsg`**: Time in seconds before auto-deleting the cooldown message (default: 10 seconds).\n\n### Responses Config\n```js\n    // Responses Config\n    ResponsesConfig: {\n      botowneronly: {\n        reply: `This command is restricted to the bot owner.`,\n        autoDelete: 10, // in seconds\n        shouldAutoDelete: true\n      },\n      serverowneronly: {\n        reply: `This command is restricted to the server owner.`,\n        autoDelete: 10, // in seconds\n        shouldAutoDelete: true\n      },\n      developerteamonly: {\n        reply: `This command is restricted to the developer team.`,\n        autoDelete: 10, // in seconds\n        shouldAutoDelete: true\n      },\n      nsfw: {\n        reply: `This command can only be used in NSFW channels.`,\n        autoDelete: 10, // in seconds\n        shouldAutoDelete: true\n      },\n      memberpermissions: {\n        reply: `You don't have the necessary permissions to use this command.`,\n        autoDelete: 10, // in seconds\n        shouldAutoDelete: true\n      },\n      botpermissions: {\n        reply: `I don't have the necessary permissions to execute this command.`,\n        autoDelete: 10, // in seconds\n        shouldAutoDelete: true\n      },\n      requiredroles: {\n        reply: `You don't have the required role(s) to use this command.`,\n        autoDelete: 10, // in seconds\n        shouldAutoDelete: true\n      },\n      requiredchannels: {\n        reply: `This command can only be used in specific channels.`,\n        autoDelete: 10, // in seconds\n        shouldAutoDelete: true\n      },\n      alloweduserids: {\n        reply: `You are not allowed to use this command.`,\n        autoDelete: 10, // in seconds\n        shouldAutoDelete: true\n      }\n    }\n  }\n```\n  - **`ResponsesConfig.botowneronly.reply`**: Message for commands restricted to the bot owner.\n  - **`ResponsesConfig.botowneronly.autoDelete`**: Time in seconds to auto-delete the response (default: 10 seconds).\n  - **`ResponsesConfig.botowneronly.shouldAutoDelete`**: Whether the response should auto-delete (default: true).\n\n  - **`ResponsesConfig.serverowneronly.reply`**: Message for commands restricted to the server owner.\n  - **`ResponsesConfig.serverowneronly.autoDelete`**: Time in seconds to auto-delete the response (default: 10 seconds).\n  - **`ResponsesConfig.serverowneronly.shouldAutoDelete`**: Whether the response should auto-delete (default: true).\n\n  - **`ResponsesConfig.developerteamonly.reply`**: Message for commands restricted to the developer team.\n  - **`ResponsesConfig.developerteamonly.autoDelete`**: Time in seconds to auto-delete the response (default: 10 seconds).\n  - **`ResponsesConfig.developerteamonly.shouldAutoDelete`**: Whether the response should auto-delete (default: true).\n\n  - **`ResponsesConfig.nsfw.reply`**: Message for commands that can only be used in NSFW channels.\n  - **`ResponsesConfig.nsfw.autoDelete`**: Time in seconds to auto-delete the response (default: 10 seconds).\n  - **`ResponsesConfig.nsfw.shouldAutoDelete`**: Whether the response should auto-delete (default: true).\n\n  - **`ResponsesConfig.memberpermissions.reply`**: Message for insufficient permissions.\n  - **`ResponsesConfig.memberpermissions.autoDelete`**: Time in seconds to auto-delete the response (default: 10 seconds).\n  - **`ResponsesConfig.memberpermissions.shouldAutoDelete`**: Whether the response should auto-delete (default: true).\n\n  - **`ResponsesConfig.botpermissions.reply`**: Message for missing bot permissions.\n  - **`ResponsesConfig.botpermissions.autoDelete`**: Time in seconds to auto-delete the response (default: 10 seconds).\n  - **`ResponsesConfig.botpermissions.shouldAutoDelete`**: Whether the response should auto-delete (default: true).\n\n  - **`ResponsesConfig.requiredroles.reply`**: Message for missing required roles.\n  - **`ResponsesConfig.requiredroles.autoDelete`**: Time in seconds to auto-delete the response (default: 10 seconds).\n  - **`ResponsesConfig.requiredroles.shouldAutoDelete`**: Whether the response should auto-delete (default: true).\n\n  - **`ResponsesConfig.requiredchannels.reply`**: Message for commands that can only be used in specific channels.\n  - **`ResponsesConfig.requiredchannels.autoDelete`**: Time in seconds to auto-delete the response (default: 10 seconds).\n  - **`ResponsesConfig.requiredchannels.shouldAutoDelete`**: Whether the response should auto-delete (default: true).\n\n  - **`ResponsesConfig.alloweduserids.reply`**: Message for users not allowed to use the command.\n  - **`ResponsesConfig.alloweduserids.autoDelete`**: Time in seconds to auto-delete the response (default: 10 seconds).\n  - **`ResponsesConfig.alloweduserids.shouldAutoDelete`**: Whether the response should auto-delete (default: true).\n---\n## Contributing\n\nContributions are welcome! Please follow these guidelines:\n\n1. **Fork the Repository**:\n   - Click the \"Fork\" button at the top-right of the repository page to create your copy.\n\n2. **Create a New Branch**:\n   - Create a new branch for your changes:\n     ```bash\n     git checkout -b my-feature-branch\n     ```\n\n3. **Make Your Changes**:\n   - Implement your changes or new features.\n\n4. **Commit and Push**:\n   - Commit your changes and push to your forked repository:\n     ```bash\n     git add .\n     git commit -m \"Add new feature\"\n     git push origin my-feature-branch\n     ```\n\n5. **Submit a Pull Request**:\n   - Open a pull request from your branch to the `main` branch of the original repository.\n---\n## Support\nIf you have any questions or need support with this project, feel free to join our Discord server. For issues or bugs, please visit the [issues section](https://github.com/CaptainTsu/DiscordJS-v14-Handler-By-Captain/issues) and submit a new issue.\n\n\u003ca href=\"https://discord.gg/AkWYfFPVdj\"\u003e\n  \u003cimg src=\"https://media.discordapp.net/attachments/1176815431865090159/1275051369363148911/image.png?ex=66c5cd1f\u0026is=66c47b9f\u0026hm=4ab7db925f0b541448cb831c428e7ae47a75b90b62e88223f6ea4cbe61d8af30\u0026=\u0026format=webp\u0026quality=lossless\u0026width=551\u0026height=138\"\u003e\n\u003c/a\u003e\n\n---\n\n## Made by\n\u003cp align=\"left\"\u003e\n  \u003ca href=\"https://discord.com/users/565854774612983808\"\u003e \u003cimg align=\"center\" src=\"https://lanyard.kyrie25.me/api/565854774612983808?waveColor=ffff\u0026waveSpotifyColor=212121\u0026gradient=fff\u0026borderRadius=25px\u0026bg=000\"/\u003e\u003c/a\u003e\n  \u003cbr\u003e\n  \u003cbr\u003e\n\u003c/p\u003e\n\n---\n## License\nThis project is licensed under the **Apache License 2.0** - see the [LICENSE](./LICENSE) file for details.\n---\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcaptaintsu%2Fdiscordjs-v14-handler-by-captain","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcaptaintsu%2Fdiscordjs-v14-handler-by-captain","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcaptaintsu%2Fdiscordjs-v14-handler-by-captain/lists"}