# discord.js-better-buttons

> A package for discord.js that makes message buttons easy to use

Latest version **1.0.5** (published 2022-06-03) · ISC license · 0 weekly downloads

> **Deprecated.** This package is deprecated.

## Install

```sh
npm install discord.js-better-buttons
pnpm add discord.js-better-buttons
yarn add discord.js-better-buttons
bun add discord.js-better-buttons
```

## Health

**Score 10/100 (F)** — status: deprecated.

Negative: deprecated.

## Facts

| | |
|---|---|
| Version | 1.0.5 |
| Published | 2022-06-03 |
| First published | 2022-06-02 |
| Weekly downloads | 0 |
| License | ISC |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 1 |
| Unpacked size | 6.3 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | jiltq |
| Maintainers | jiltq |

## Links

- npm: https://www.npmjs.com/package/discord.js-better-buttons
- npm.io page: https://npm.io/package/discord.js-better-buttons

## Dependencies (1)

- [discord.js](https://npm.io/package/discord.js.md) ^13.7.0

## Recent versions

- 1.0.5 (latest) — 2022-06-03
- 1.0.4 — 2022-06-03
- 1.0.3 — 2022-06-02
- 1.0.2 — 2022-06-02
- 1.0.1 — 2022-06-02
- 1.0.0 — 2022-06-02

## README

# PLEASE DO NOT USE THIS PACKAGE YET ITS NOT FINISHED!!!!!!!!

## About

discord.js-better-buttons is a package that makes message buttons easier (and fun) to use.

## Features

- a

## Installation

```sh-session
npm i discord.js discord.js-better-buttons
```

## Example Comparison

If you want to create and use a button with just discord.js, here's how you currently do it:

```js
const row = new Discord.MessageActionRow()
	.addComponents(
		new Discord.MessageButton()
			.setLabel('My button')
			.setCustomId('mybutton')
			.setStyle('PRIMARY'),
	);

await interaction.reply({ content: 'Here\'s a button!', components: [row] });

const filter = i => i.user.id == interaction.user.id;

const collector = interaction.channel.createMessageComponentCollector({ filter, time: 15000 });

collector.on('collect', async i => {
	if (i.customId == 'mybutton') {
		console.log('A button was clicked!');
	}
});
```

That's cool and all, but it could be better. Here's how you can create and send a button using discord.js-better-buttons:

```js
const { Button, ButtonBundle, ButtonPackage, ButtonStyles } = require('discord.js-better-buttons');

const button = new Button({ label: 'My button', style: ButtonStyles.primary });
const bundle = new ButtonBundle([ button ]);
const package = new ButtonPackage([ bundle ], interaction.client);

button.on('click', async i =>{
	console.log('A button was clicked!');
});

await interaction.reply({ content: 'Here\'s a button!', components: package.format() });
```

Yes, yes, I know. It's amazing. But you know what's even more amazing? Your code, once you start using this package!

---
_Source: https://npm.io/package/discord.js-better-buttons · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
