discord-container-kit
v1.0.4
Published
Fluent, type-safe builders for Discord Components V2 - built for discord.js v14
Maintainers
Readme
discord-container-kit
A lightweight builder library for Discord Components V2 containers and sections.
Why this library
Discord Components V2 is powerful but painful to build manually.
This library exists to:
- Remove raw JSON building
- Prevent invalid component structures
- Make containers composable and reusable
Built for developers who want to stop fighting Discord's raw component JSON and focus on structure instead.
📖 The Ultimate Beginner's Guide
New to Components V2 or Discord.js? We highly recommend starting with our beginner-friendly guide.
Read The Ultimate Beginner's Guide Here
This guide covers:
- Why you must bypass
interaction.reply() - The Magic
32768Flag - Copy-pasteable examples for every single component type (Dropdowns, Buttons, Galleries, and more)
Installation
npm install discord-container-kitRequires Node.js 20+ and discord.js v14.18.0+.
Quick Start
import {
ContainerBuilder, SectionBuilder, TextDisplayBuilder, ButtonBuilder
} from "discord-container-kit";
const container = new ContainerBuilder().add(
new SectionBuilder()
.add(
new TextDisplayBuilder().content("## Hello World")
)
.setAccessory(
new ButtonBuilder().primary("btn_click", "Click Me")
)
);
console.log(container.toJSON());Features
- Prevents invalid Discord V2 component trees
- Builder-based API instead of raw JSON
- Safe serialization with no reference leaks
- Supports Containers, Sections, TextDisplays, Buttons, and Accessories
Documentation
Full documentation is available in the docs folder:
Notes
This library follows the Discord Components V2 specification. Because Components V2 is actively being tested by Discord, backend rules (like strict accessory requirements on sections) might change.
