cwk-gen
v1.1.3
Published
High-quality image generator for Discord bots with welcome images, rank cards, profile cards, and server banners
Maintainers
Readme
cwk-gen - Discord Image Generator for Node.js
A high-quality image generator for Discord bots that creates welcome images, rank cards, profile cards, and server banners with extensive customization options.
Features
- 🖼️ Generate welcome images with username, avatar, and custom background
- 🏆 Create rank cards with level, XP, and rank position
- 📇 Design profile cards with user bio, stats, and badges
- 🎉 Produce server banners with server name and member count
- 🎨 Customizable fonts, colors, and backgrounds
- ⭕ Automatic avatar cropping to circles
- ✍️ Text wrapping and shadow effects
- 📊 Progress bars for XP tracking
Installation
npm install cwk-genNote: canvas and sharp are peer dependencies that need to be installed separately.
Quick Start
const { generateWelcomeImage } = require('cwk-gen');
async function createWelcome() {
const buffer = await generateWelcomeImage({
username: "JohnDoe",
avatarURL: "https://cdn.discordapp.com/avatars/123456789012345678/a_abcdefghijklmnopqrstuvwxyz123456.png",
message: "Welcome to our server!",
color: "#5865F2"
});
// In Discord.js
const attachment = new Discord.AttachmentBuilder(buffer, { name: 'welcome.png' });
channel.send({ files: [attachment] });
}Documentation
Welcome Images
generateWelcomeImage({
username: "string", // Required
avatarURL: "string", // Required
background: "string|Buffer", // Optional
title: "string", // Default: "WELCOME"
message: "string", // Default: "Welcome to the server!"
// ...and more options
});Rank Cards
generateRankCard({
username: "string", // Required
avatarURL: "string", // Required
level: number, // Required
xp: number, // Required
requiredXp: number, // Required
rank: number, // Required
// ...and more options
});Profile Cards
generateProfileCard({
username: "string", // Required
avatarURL: "string", // Required
bio: "string", // Optional
stats: Array<{name, value}>, // Optional
badges: Array<{name, icon}>, // Optional
// ...and more options
});Server Banners
generateServerBanner({
serverName: "string", // Required
memberCount: number, // Required
// ...and more options
});Examples
Advanced Rank Card with Custom Font
const { generateRankCard, registerFonts } = require('cwk-gen');
registerFonts([
{ path: './fonts/Poppins-Bold.ttf', family: 'Poppins', weight: 'bold' }
]);
generateRankCard({
username: "JaneDoe",
avatarURL: avatarURL,
level: 15,
xp: 1250,
requiredXp: 2000,
rank: 42,
font: "Poppins",
progressColor: "#FF9900"
});Exmaples
Example bot
Images example
Click here to view the example images
Make sure to star 🌟 the repo also join our server for project and development ❤️.
Contributing
Contributions are welcome! Please open an issue or submit a pull request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a pull request
License
Distributed under the MIT License. See LICENSE for more information.
Contact
Project Link: https://github.com/Khanmanan/cwk-gen
