1.1.0 • Published 2 years ago

@discordjs-cli/discordjs-cli v1.1.0

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

⚠️ BETA RELEASE ⚠️

A CLI for creating Discord.js bots with ease.

Main updates:
  • Added: n/a
  • Bug fix: n/a
  • Update: config.json is now config.js/config.ts for use with intellisense

Report bugs here


⚙️ Installation:

NOTE: You'll need to install the CLI globally in order for it to work. Nodemon is used to run the projects, so go ahead and install that as well.

Node v16+ is required
sudo npm i -g @discordjs-cli/discordjs-cli
sudo npm install -g nodemon

🌚 Create a project

Supported frameworks:

  • JavaScript
  • TypeScript

Initiate a new project like so:

djs new <project name>

This will walk you through the setup process of creating a new Discord.js, or Discord.ts bot.

Once your bot has been made, you can cd into the bot directory. The bot itself is in the ./src folder. In the ./src folder, theres a config folder that has a config.js/ts file inside. Add your bots token, client ID, etc. and then run:

djs run

And your bot should be online!


🔨 Initiate a project

Initiate an existing project like so:

djs init

This will walk you through the process of initiating an existing project.

NOTE: This only works for projects with the proper file structure.

Once your bot has been initiated, you can run:

djs run

And your bot should be online!


😌 Add commands, buttons, menus, etc!

/Slash commands

NOTE: Slash commands need to be deployed in order for them to show up on discord

Create a slash command

To create a slash command, run the following command:

# alternatively, use djs g c <command-name>
djs generate command <command-name>

This will create a new slash command template in our ./src/interactions/slash_commands folder.

Adding a sub command

To create a subcommand, run the following command:

# alternatively, use djs g s <command-name/subcommand-name>
djs generate subcommand <command-name/subcommand-name>

Deploying slash commands

NOTE: By default, commands are run for DEV commands; to the guild specified in your config.js/ts file. Specify the -g flag in the command, ie. djs deploy -g, to run globally.

To deploy slash commands, run the following command:

djs deploy

Updating slash commands

To update slash commands, run the following command:

djs update

Deleting slash commands

NOTE: This does NOT delete any files. It simply sets the bots commands to an empty array.

To delete slash commands, run the following command:

djs delete

!Legacy commands

Create a legacy command

To create a legacy command, run the following command:

# alternatively, use djs g l <command-name>
djs generate legacy <command-name>

This will create a new legacy command template in our ./src/interactions/legacy_commands/ folder.


🔘 Buttons

Create a button

Button types:

  • Blank (blank button)
  • Role (reaction role button)

To create a button, run the following command:

# alternatively, use djs g b <button-id>
djs generate button <button-id>

Next, you'll be prompted for a row name:

> Row (default is button ID):

You can then choose which button template you want:

> Button type: (Use arrow keys)
❯ Blank 
  Role

Selecting "Blank" will create a blank template, while selecting "Role" will have one more prompt for a role ID:

> Role ID (leave blank to add later): 

And thats it! When a role with the button ID you provided is clicked, the newly created button handler will run!


📂 Menus

Create a menu

To create a menu, run the following command:

# alternatively, use djs g menu <menu-name/option-id>
djs generate menu <menu-name/option-id>

This will create a folder in our "./src/menus" directory with the "menu-name" name, if none exists, then create our menu option file. The newly created menu file will be triggered when a menu with the the menu ID and menu option we specified in the command is selected.


Misc commands

To check the version of djs, run the following command:

djs --version

To update the CLI, run the following command:

djs --update

This will run sudo npm i -g @discordjs-cli/discordjs-cli. Note, you may be prompted for your password as the command is run with sudo.


Im still working on getting this to version 1, but I hope theres an appeal for it! :D

If you've worked with the Angular CLI, then this will look familiar xD

I work on quite a few bots, and I thought for sure theres got to be a faster way to go about things. I present to you: the Discord.js CLI 🎉

TODO: Add modals, and the one clicky thingy i forgor what its called 💀

If you have any suggestions, feel free to add them to the discussions page on the GitHub repo! I want this to be the most epic thing since sliced bread :D

1.0.19

2 years ago

1.1.0

2 years ago

1.0.18

2 years ago

1.0.17

2 years ago

1.0.16

2 years ago

1.0.9

2 years ago

1.0.8

2 years ago

1.0.22

2 years ago

1.0.21

2 years ago

1.0.20

2 years ago

1.0.26

2 years ago

1.0.25

2 years ago

1.0.24

2 years ago

1.0.23

2 years ago

1.0.29

2 years ago

1.0.28

2 years ago

1.0.27

2 years ago

1.0.11

2 years ago

1.0.10

2 years ago

1.0.31

2 years ago

1.0.30

2 years ago

1.0.15

2 years ago

1.0.14

2 years ago

1.0.13

2 years ago

1.0.12

2 years ago

1.0.7

2 years ago

1.0.6

2 years ago

1.0.4

2 years ago

1.0.3

2 years ago

1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago