8.4.0 • Published 2 days ago

reciple v8.4.0

Weekly downloads
-
License
GPL-3.0
Repository
github
Last release
2 days ago

Highlights

Using Templates

To use templates use the following command in your terminal:

npm create reciple@latest

After that configure the template you want to use.

Manual Installation

To install the handler, run the following command in your terminal:

npm i reciple @reciple/core discord.js

CLI usage

Usage: reciple [options] [cwd]

Reciple is a Discord.js bot framework

Arguments:
  cwd                      Change the current working directory

Options:
  -v, --version            output the version number
  -t, --token <token>      Replace used bot token
  -c, --config <dir>       Set path to a config file (default: "reciple.mjs")
  -D, --debugmode          Enable debug mode
  -y, --yes                Agree to all Reciple confirmation prompts
  --env <file>             .env file location
  --shardmode              Modifies some functionalities to support sharding
  --setup                  Create required config without starting the bot
  --cache-config <file>    Add custom caching config
  --sweeper-config <file>  Add custom sweeper config
  -h, --help               display help for command

Message Commands

Reciple provides a built-in MessageCommandBuilder class that can be used for message command handler.

Read Docs

import { MessageCommandBuilder } from 'reciple';

new MessageCommandBuilder()
    .setName("command")
    .setDescription("Your lil tiny description")
    .addAliases("cmd", "cmd1")
    .setExecute(command => command.message.reply("Hello!"));

Validate Message Command Options

Read Docs

import { MessageCommandBuilder } from 'reciple';

new MessageCommandBuilder()
    .setName("command")
    .setDescription("Your lil tiny description")
    .addAliases("cmd", "cmd1")
    .setValidateOptions(true) // Validate options
    .addOption(option => option
        .setName("quantity")
        .setDescription("Must be a number")
        .setRequired(true) // A required option
        .setValidate(val => !isNaN(Number(val))) // Validate value
        .setResolveValue(val => Number(val)) // Resolves the option value
    )
    .setExecute(async command => {
        /**
         * @type {number}
         */
        const quantity = await data.options.getOptionValue('number', { required: true, resolveValue: true });;
        await command.message.reply("Quantity: " + quantity);
    });

Context Menus

Reciple provides extended ContextMenuCommandBuilder class that can be used for context menu command handler.

Read Docs

import { ApplicationCommandType } from 'discord.js';
import { ContextMenuCommandBuilder } from 'reciple';

new ContextMenuCommandBuilder()
    .setName("Ban")
    .setType(ApplicationCommandType.User)
    .setExecute(async ({ interaction }) => {
        if (!interaction.inCachedGuild()) return;
        await interaction.targetMember.ban();
    });

Slash Commands

Reciple provides extended SlashCommandBuilder class that can be used for slash command handler. Read Docs

import { SlashCommandMenuBuilder } from 'reciple';

new SlashCommandBuilder()
    .setName("ping")
    .setDescription("Pong")
    .setExecute(async ({ interaction }) => interaction.reply(`Pong!`));

Command Cooldowns

Read Docs

import { ContextMenuCommandBuilder, MessageCommandBuilder, SlashCommandBuilder } from 'reciple';
import { ApplicationCommandType } from 'discord.js';

new ContextMenuCommandBuilder()
    .setName("Context Menu")
    .setType(ApplicationCommandType.Message)
    .setCooldown(1000 * 5) // 5 seconds cooldown
    .setExecute(async ({ interaction }) => interaction.reply(`Hello!`));

new MessageCommandBuilder()
    .setName("message-command")
    .setDescription(`Your command`)
    .setCooldown(1000 * 5) // 5 seconds cooldown
    .setExecute(async ({ message }) => message.reply(`Hello!`));

new SlashCommandBuilder()
    .setName("slash-command")
    .setDescription(`Your command`)
    .setCooldown(1000 * 5) // 5 seconds cooldown
    .setExecute(async ({ interaction }) => interaction.reply(`Hello!`));

Config

You can configure the bot in reciple.mjs or reciple.cjs usually located in the bot's root directory.

Token

You can change the token in config.

token: "Your Token" // Directly set token string
token: process.env.TOKEN // Use env variable

You can override the given token as cli flag

reciple --token "YOUR_TOKEN_HERE"
reciple --token "env:TOKEN_VARIABLE"

Fun Fact

The name reciple is from a minecraft bug. The bug was a misspelling of the word recipe. View Mojang Bug Report

8.4.0

2 days ago

8.3.2

2 months ago

8.3.1

5 months ago

8.3.0

5 months ago

8.2.3

6 months ago

8.2.2

6 months ago

8.2.5

6 months ago

8.2.4

6 months ago

8.1.0

7 months ago

8.1.2

7 months ago

8.1.1

7 months ago

8.2.1

6 months ago

8.2.0

6 months ago

8.0.0-dev.13

7 months ago

8.0.0-dev.12

7 months ago

8.0.0-dev.11

7 months ago

8.0.0-dev.10

7 months ago

7.9.11

7 months ago

7.9.12

6 months ago

8.0.0-dev.1

7 months ago

8.0.0-dev.0

7 months ago

8.0.0-dev.7

7 months ago

8.0.0-dev.6

7 months ago

8.0.0-dev.9

7 months ago

8.0.0-dev.8

7 months ago

8.0.0-dev.3

7 months ago

8.0.0-dev.2

7 months ago

8.0.0-dev.5

7 months ago

8.0.0-dev.4

7 months ago

8.0.4

7 months ago

8.1.8

6 months ago

8.1.7

6 months ago

8.1.9

6 months ago

8.1.4

7 months ago

8.1.3

7 months ago

8.1.6

6 months ago

8.0.1

7 months ago

8.0.0

7 months ago

8.0.3

7 months ago

8.0.2

7 months ago

7.9.10

7 months ago

7.8.3-dev.0

11 months ago

7.8.0-dev.9

11 months ago

7.8.0-dev.7

11 months ago

7.8.0-dev.8

11 months ago

7.8.0-dev.5

11 months ago

7.8.0-dev.6

11 months ago

7.8.0-dev.3

11 months ago

7.8.0-dev.4

11 months ago

7.8.0-dev.1

11 months ago

7.8.0-dev.2

11 months ago

7.8.0-dev.0

11 months ago

7.7.1

12 months ago

7.7.0

12 months ago

7.7.4

12 months ago

7.7.3

12 months ago

7.7.2

12 months ago

7.8.0

11 months ago

7.8.3

11 months ago

7.8.2

11 months ago

7.8.1

11 months ago

7.9.0-dev.0

10 months ago

7.9.0-dev.1

10 months ago

7.9.3

9 months ago

7.9.2

9 months ago

7.9.1

10 months ago

7.9.0

10 months ago

7.9.7

9 months ago

7.9.6

9 months ago

7.9.5

9 months ago

7.9.4

9 months ago

7.9.9

9 months ago

7.9.8

9 months ago

7.7.0-dev.7

12 months ago

7.3.1

1 year ago

7.3.0

1 year ago

7.4.3

1 year ago

7.4.1

1 year ago

7.4.0

1 year ago

7.5.1

1 year ago

7.5.0

1 year ago

7.0.13-dev.8

1 year ago

7.0.12

1 year ago

7.0.13

1 year ago

7.0.13-dev.7

1 year ago

7.0.10

1 year ago

7.0.13-dev.9

1 year ago

7.0.11

1 year ago

7.0.13-dev.0

1 year ago

7.0.13-dev.2

1 year ago

7.0.0-dev.11

1 year ago

7.0.13-dev.1

1 year ago

7.0.0-dev.10

1 year ago

7.0.13-dev.4

1 year ago

7.0.0-dev.13

1 year ago

7.0.13-dev.3

1 year ago

7.0.0-dev.12

1 year ago

7.0.0-dev.15

1 year ago

7.0.13-dev.5

1 year ago

7.0.0-dev.14

1 year ago

7.6.2

1 year ago

7.6.1

1 year ago

7.6.0

1 year ago

7.6.5

12 months ago

7.6.4

12 months ago

7.6.3

1 year ago

7.0.0-dev.5

1 year ago

7.0.0-dev.6

1 year ago

7.0.0-dev.9

1 year ago

7.0.0-dev.7

1 year ago

7.0.0-dev.8

1 year ago

7.0.8

1 year ago

7.0.7

1 year ago

7.0.6

1 year ago

7.0.5

1 year ago

7.0.9

1 year ago

7.0.13-dev.10

1 year ago

7.0.13-dev.11

1 year ago

7.0.13-dev.12

1 year ago

7.0.13-dev.13

1 year ago

7.0.0

1 year ago

7.0.4

1 year ago

7.0.3

1 year ago

7.0.2

1 year ago

7.0.1

1 year ago

7.1.7

1 year ago

7.1.6

1 year ago

7.1.5

1 year ago

7.1.4

1 year ago

7.1.9

1 year ago

7.1.8

1 year ago

7.1.3

1 year ago

7.1.2

1 year ago

7.1.1

1 year ago

7.1.0

1 year ago

7.2.3

1 year ago

7.7.0-dev.6

12 months ago

7.7.0-dev.5

12 months ago

7.7.0-dev.4

12 months ago

7.1.11

1 year ago

7.7.0-dev.3

12 months ago

7.7.0-dev.2

12 months ago

7.1.10

1 year ago

7.7.0-dev.1

12 months ago

7.7.0-dev.0

12 months ago

7.2.2

1 year ago

7.2.1

1 year ago

7.2.0

1 year ago

7.3.2

1 year ago

6.0.0-dev.30

1 year ago

6.0.0-dev.10

2 years ago

6.0.0

1 year ago

6.0.3

1 year ago

6.0.0-dev.13

2 years ago

6.0.2

1 year ago

6.0.0-dev.14

2 years ago

6.0.0-dev.11

2 years ago

6.0.4

1 year ago

6.0.0-dev.12

2 years ago

6.0.0-dev.17

2 years ago

6.0.0-dev.18

2 years ago

6.0.0-dev.15

2 years ago

6.0.0-dev.9

2 years ago

6.0.0-dev.16

2 years ago

6.0.0-dev.8

2 years ago

6.0.0-dev.7

2 years ago

6.0.0-dev.6

2 years ago

6.0.0-dev.19

2 years ago

6.0.0-dev.5

2 years ago

6.0.0-dev.4

2 years ago

6.0.0-dev.3

2 years ago

6.0.0-dev.2

2 years ago

6.0.0-dev.1

2 years ago

6.0.0-dev.20

2 years ago

6.0.0-dev.21

2 years ago

6.0.0-dev.24

2 years ago

6.0.0-dev.25

2 years ago

6.0.0-dev.22

2 years ago

6.0.0-dev.23

2 years ago

6.0.0-dev.28

1 year ago

6.0.0-dev.29

1 year ago

6.0.0-dev.26

2 years ago

6.0.0-dev.27

2 years ago

5.3.0

2 years ago

5.4.1-pre.3

2 years ago

5.4.1-pre.2

2 years ago

5.4.1-pre.5

2 years ago

5.4.1-pre.4

2 years ago

5.4.1-pre.1

2 years ago

5.4.4

2 years ago

5.4.3

2 years ago

5.4.2

2 years ago

5.4.1

2 years ago

5.4.0

2 years ago

5.4.0-pre.2

2 years ago

5.4.0-pre.1

2 years ago

5.5.6

2 years ago

5.5.5

2 years ago

5.5.4

2 years ago

5.5.3

2 years ago

5.5.2

2 years ago

5.5.1

2 years ago

5.5.0

2 years ago

5.6.0

2 years ago

5.2.0

2 years ago

1.2.0

2 years ago

5.1.2

2 years ago

5.1.1

2 years ago

5.1.0

2 years ago

1.6.2

2 years ago

1.6.1

2 years ago

1.6.0

2 years ago

1.4.2

2 years ago

1.4.1

2 years ago

3.0.0-pre.1

2 years ago

1.4.0

2 years ago

2.0.2

2 years ago

2.0.1

2 years ago

2.0.0

2 years ago

3.0.3

2 years ago

3.0.2

2 years ago

3.0.1

2 years ago

3.0.0

2 years ago

4.0.0

2 years ago

1.5.6

2 years ago

5.0.0-pre.3

2 years ago

5.0.0-pre.4

2 years ago

5.0.0-pre.5

2 years ago

5.0.0-pre.6

2 years ago

5.0.0

2 years ago

5.0.0-pre.1

2 years ago

5.0.0-pre.2

2 years ago

1.5.5

2 years ago

1.5.4

2 years ago

1.7.1

2 years ago

1.5.3

2 years ago

1.7.0

2 years ago

1.5.2

2 years ago

1.1.6

2 years ago

5.0.0-pre.7

2 years ago

2.0.0-pre.1

2 years ago

1.5.1

2 years ago

1.3.3

2 years ago

1.1.5

2 years ago

2.0.0-pre.0

2 years ago

1.5.0

2 years ago

1.3.2

2 years ago

1.1.4

2 years ago

1.3.1

2 years ago

1.1.3

2 years ago

1.3.0

2 years ago

3.1.3

2 years ago

3.1.2

2 years ago

3.1.1

2 years ago

3.1.0

2 years ago

3.1.4

2 years ago

4.0.0-pre.1

2 years ago

4.0.0-pre.3

2 years ago

4.0.0-pre.2

2 years ago

4.0.0-pre.4

2 years ago

4.1.0

2 years ago

4.1.2

2 years ago

4.1.1

2 years ago

1.7.1-pre.0

2 years ago

1.1.1

2 years ago

1.0.19

2 years ago

1.1.0

2 years ago

1.0.17

2 years ago

1.0.16

2 years ago

1.1.2

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.11

2 years ago

1.0.10

2 years ago

1.0.9

2 years ago

1.0.89

2 years ago

1.0.8

2 years ago

1.0.7

2 years ago

1.0.6

2 years ago

1.0.5

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