container-factory
v1.0.0
Published
A robust discord.js utility for building Discord Components v2 (Containers, Sections, etc.)
Maintainers
Readme
📦 Container Factory
A robust, lightweight utility for building Discord Components v2
📖 About
Container Factory abstracts the complexity of Discord's new Components v2 architecture (Containers, Sections, TextDisplay, etc.) into a fluent, type-safe API. Built on top of discord.js, it allows you to construct beautiful, rich interfaces for your bots with minimal boilerplate.
✨ Features
- 🧩 Complete v2 Support
- Containers, Sections, Separators
- Text Display Components
- Media Galleries & Files
- 🎨 Fluent API Design
- Intuitive helper functions for every component
- Chainable builders
- 🖼️ Media Galleries
- Create scrolling carousels with ease
- 🔘 Interactive Components
- Buttons, Link Buttons, Labels
- Advanced Select Menus (String, User, Role, Channel, Mentionable)
- 🪶 Zero Dependencies
- Lightweight and focused purely on UI construction
📥 Installation
npm install container-factoryNote: Requires
discord.jsv14.25.1 or newer.
🚀 Usage
import { createText, buildContainer, createMessagePayload } from 'container-factory';
// 1. Create components
const helloProps = createText("👋 **Welcome to Container Factory!**");
// 2. Build the container
const container = buildContainer(helloProps);
// 3. Send it
await channel.send(createMessagePayload(container));💡 Examples
Rich Section with Accessories
import { createSection, createButton, buildContainer } from 'container-factory';
const settingsBtn = createButton('settings', '⚙️');
const section = createSection("**User Settings**\nManage your preferences here.", settingsBtn);
await channel.send(createMessagePayload(buildContainer(section)));Media Gallery (Carousel)
import { createMediaGallery, buildContainer } from 'container-factory';
const gallery = createMediaGallery([
'https://example.com/slide1.png',
'https://example.com/slide2.png'
], "Project Showcase");
await channel.send(createMessagePayload(buildContainer(gallery)));🤝 Contributing
- Fork the repository
- Clone your fork:
git clone https://github.com/your-username/container-factory.git - Create your feature branch:
git checkout -b my-new-feature - Commit your changes:
git commit -am 'Add some feature' - Push to the branch:
git push origin my-new-feature - Submit a pull request
👤 Developer
Ramkrishna
- Github: @ramkrishna
📄 License
This project is licensed under the MIT License. See the LICENSE file for details.
