9.9.0 • Published 4 months ago

reciple v9.9.0

Weekly downloads
-
License
GPL-3.0
Repository
github
Last release
4 months 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

9.8.0

6 months ago

9.9.0

4 months ago

9.7.1

10 months ago

9.7.0

10 months ago

9.0.5

1 year ago

9.0.4

1 year ago

9.0.3

1 year ago

9.0.2

1 year ago

9.0.1

1 year ago

9.0.0-dev.11

1 year ago

9.0.0-dev.10

1 year ago

9.2.1

1 year ago

9.0.0-dev.12

1 year ago

8.4.1

1 year ago

8.4.2

1 year ago

9.1.1

1 year ago

9.1.0

1 year ago

9.3.2

12 months ago

9.3.1

12 months ago

9.3.0

12 months ago

9.2.0

1 year ago

9.4.1

12 months ago

9.4.0

12 months ago

9.5.1

11 months ago

9.5.0

11 months ago

9.0.0-dev.9

1 year ago

9.0.0-dev.0

1 year ago

9.0.0-dev.1

1 year ago

9.0.0-dev.2

1 year ago

9.0.0-dev.3

1 year ago

9.0.0-dev.4

1 year ago

9.0.0-dev.5

1 year ago

9.0.0-dev.6

1 year ago

9.0.0-dev.7

1 year ago

9.0.0-dev.8

1 year ago

8.4.0

1 year ago

8.3.2

1 year ago

8.3.1

2 years ago

8.3.0

2 years ago

8.2.3

2 years ago

8.2.2

2 years ago

8.2.5

2 years ago

8.2.4

2 years ago

8.1.0

2 years ago

8.1.2

2 years ago

8.1.1

2 years ago

8.2.1

2 years ago

8.2.0

2 years ago

8.0.0-dev.13

2 years ago

8.0.0-dev.12

2 years ago

8.0.0-dev.11

2 years ago

8.0.0-dev.10

2 years ago

7.9.11

2 years ago

7.9.12

2 years ago

8.0.0-dev.1

2 years ago

8.0.0-dev.0

2 years ago

8.0.0-dev.7

2 years ago

8.0.0-dev.6

2 years ago

8.0.0-dev.9

2 years ago

8.0.0-dev.8

2 years ago

8.0.0-dev.3

2 years ago

8.0.0-dev.2

2 years ago

8.0.0-dev.5

2 years ago

8.0.0-dev.4

2 years ago

8.0.4

2 years ago

8.1.8

2 years ago

8.1.7

2 years ago

8.1.9

2 years ago

8.1.4

2 years ago

8.1.3

2 years ago

8.1.6

2 years ago

8.0.1

2 years ago

8.0.0

2 years ago

8.0.3

2 years ago

8.0.2

2 years ago

7.9.10

2 years ago

7.8.3-dev.0

2 years ago

7.8.0-dev.9

2 years ago

7.8.0-dev.7

2 years ago

7.8.0-dev.8

2 years ago

7.8.0-dev.5

2 years ago

7.8.0-dev.6

2 years ago

7.8.0-dev.3

2 years ago

7.8.0-dev.4

2 years ago

7.8.0-dev.1

2 years ago

7.8.0-dev.2

2 years ago

7.8.0-dev.0

2 years ago

7.7.1

2 years ago

7.7.0

2 years ago

7.7.4

2 years ago

7.7.3

2 years ago

7.7.2

2 years ago

7.8.0

2 years ago

7.8.3

2 years ago

7.8.2

2 years ago

7.8.1

2 years ago

7.9.0-dev.0

2 years ago

7.9.0-dev.1

2 years ago

7.9.3

2 years ago

7.9.2

2 years ago

7.9.1

2 years ago

7.9.0

2 years ago

7.9.7

2 years ago

7.9.6

2 years ago

7.9.5

2 years ago

7.9.4

2 years ago

7.9.9

2 years ago

7.9.8

2 years ago

7.7.0-dev.7

2 years ago

7.3.1

2 years ago

7.3.0

2 years ago

7.4.3

2 years ago

7.4.1

2 years ago

7.4.0

2 years ago

7.5.1

2 years ago

7.5.0

2 years ago

7.0.13-dev.8

2 years ago

7.0.12

2 years ago

7.0.13

2 years ago

7.0.13-dev.7

2 years ago

7.0.10

2 years ago

7.0.13-dev.9

2 years ago

7.0.11

2 years ago

7.0.13-dev.0

2 years ago

7.0.13-dev.2

2 years ago

7.0.0-dev.11

2 years ago

7.0.13-dev.1

2 years ago

7.0.0-dev.10

2 years ago

7.0.13-dev.4

2 years ago

7.0.0-dev.13

2 years ago

7.0.13-dev.3

2 years ago

7.0.0-dev.12

2 years ago

7.0.0-dev.15

2 years ago

7.0.13-dev.5

2 years ago

7.0.0-dev.14

2 years ago

7.6.2

2 years ago

7.6.1

2 years ago

7.6.0

2 years ago

7.6.5

2 years ago

7.6.4

2 years ago

7.6.3

2 years ago

7.0.0-dev.5

2 years ago

7.0.0-dev.6

2 years ago

7.0.0-dev.9

2 years ago

7.0.0-dev.7

2 years ago

7.0.0-dev.8

2 years ago

7.0.8

2 years ago

7.0.7

2 years ago

7.0.6

2 years ago

7.0.5

2 years ago

7.0.9

2 years ago

7.0.13-dev.10

2 years ago

7.0.13-dev.11

2 years ago

7.0.13-dev.12

2 years ago

7.0.13-dev.13

2 years ago

7.0.0

2 years ago

7.0.4

2 years ago

7.0.3

2 years ago

7.0.2

2 years ago

7.0.1

2 years ago

7.1.7

2 years ago

7.1.6

2 years ago

7.1.5

2 years ago

7.1.4

2 years ago

7.1.9

2 years ago

7.1.8

2 years ago

7.1.3

2 years ago

7.1.2

2 years ago

7.1.1

2 years ago

7.1.0

2 years ago

7.2.3

2 years ago

7.7.0-dev.6

2 years ago

7.7.0-dev.5

2 years ago

7.7.0-dev.4

2 years ago

7.1.11

2 years ago

7.7.0-dev.3

2 years ago

7.7.0-dev.2

2 years ago

7.1.10

2 years ago

7.7.0-dev.1

2 years ago

7.7.0-dev.0

2 years ago

7.2.2

2 years ago

7.2.1

2 years ago

7.2.0

2 years ago

7.3.2

2 years ago

6.0.0-dev.30

3 years ago

6.0.0-dev.10

3 years ago

6.0.0

3 years ago

6.0.3

3 years ago

6.0.0-dev.13

3 years ago

6.0.2

3 years ago

6.0.0-dev.14

3 years ago

6.0.0-dev.11

3 years ago

6.0.4

3 years ago

6.0.0-dev.12

3 years ago

6.0.0-dev.17

3 years ago

6.0.0-dev.18

3 years ago

6.0.0-dev.15

3 years ago

6.0.0-dev.9

3 years ago

6.0.0-dev.16

3 years ago

6.0.0-dev.8

3 years ago

6.0.0-dev.7

3 years ago

6.0.0-dev.6

3 years ago

6.0.0-dev.19

3 years ago

6.0.0-dev.5

3 years ago

6.0.0-dev.4

3 years ago

6.0.0-dev.3

3 years ago

6.0.0-dev.2

3 years ago

6.0.0-dev.1

3 years ago

6.0.0-dev.20

3 years ago

6.0.0-dev.21

3 years ago

6.0.0-dev.24

3 years ago

6.0.0-dev.25

3 years ago

6.0.0-dev.22

3 years ago

6.0.0-dev.23

3 years ago

6.0.0-dev.28

3 years ago

6.0.0-dev.29

3 years ago

6.0.0-dev.26

3 years ago

6.0.0-dev.27

3 years ago

5.3.0

3 years ago

5.4.1-pre.3

3 years ago

5.4.1-pre.2

3 years ago

5.4.1-pre.5

3 years ago

5.4.1-pre.4

3 years ago

5.4.1-pre.1

3 years ago

5.4.4

3 years ago

5.4.3

3 years ago

5.4.2

3 years ago

5.4.1

3 years ago

5.4.0

3 years ago

5.4.0-pre.2

3 years ago

5.4.0-pre.1

3 years ago

5.5.6

3 years ago

5.5.5

3 years ago

5.5.4

3 years ago

5.5.3

3 years ago

5.5.2

3 years ago

5.5.1

3 years ago

5.5.0

3 years ago

5.6.0

3 years ago

5.2.0

3 years ago

1.2.0

3 years ago

5.1.2

3 years ago

5.1.1

3 years ago

5.1.0

3 years ago

1.6.2

3 years ago

1.6.1

3 years ago

1.6.0

3 years ago

1.4.2

3 years ago

1.4.1

3 years ago

3.0.0-pre.1

3 years ago

1.4.0

3 years ago

2.0.2

3 years ago

2.0.1

3 years ago

2.0.0

3 years ago

3.0.3

3 years ago

3.0.2

3 years ago

3.0.1

3 years ago

3.0.0

3 years ago

4.0.0

3 years ago

1.5.6

3 years ago

5.0.0-pre.3

3 years ago

5.0.0-pre.4

3 years ago

5.0.0-pre.5

3 years ago

5.0.0-pre.6

3 years ago

5.0.0

3 years ago

5.0.0-pre.1

3 years ago

5.0.0-pre.2

3 years ago

1.5.5

3 years ago

1.5.4

3 years ago

1.7.1

3 years ago

1.5.3

3 years ago

1.7.0

3 years ago

1.5.2

3 years ago

1.1.6

3 years ago

5.0.0-pre.7

3 years ago

2.0.0-pre.1

3 years ago

1.5.1

3 years ago

1.3.3

3 years ago

1.1.5

3 years ago

2.0.0-pre.0

3 years ago

1.5.0

3 years ago

1.3.2

3 years ago

1.1.4

3 years ago

1.3.1

3 years ago

1.1.3

3 years ago

1.3.0

3 years ago

3.1.3

3 years ago

3.1.2

3 years ago

3.1.1

3 years ago

3.1.0

3 years ago

3.1.4

3 years ago

4.0.0-pre.1

3 years ago

4.0.0-pre.3

3 years ago

4.0.0-pre.2

3 years ago

4.0.0-pre.4

3 years ago

4.1.0

3 years ago

4.1.2

3 years ago

4.1.1

3 years ago

1.7.1-pre.0

3 years ago

1.1.1

3 years ago

1.0.19

3 years ago

1.1.0

3 years ago

1.0.17

3 years ago

1.0.16

3 years ago

1.1.2

3 years ago

1.0.15

3 years ago

1.0.14

3 years ago

1.0.13

3 years ago

1.0.12

3 years ago

1.0.11

3 years ago

1.0.10

3 years ago

1.0.9

3 years ago

1.0.89

3 years ago

1.0.8

3 years ago

1.0.7

3 years ago

1.0.6

3 years ago

1.0.5

3 years ago

1.0.4

3 years ago

1.0.3

3 years ago

1.0.2

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago