A powerful JavaScript/TypeScript utility library for image manipulation, Discord utilities, and more!
- πΌοΈ Image Manipulation - Convert, resize, and create thumbnails with ease
- π€ Discord Utilities - Create beautiful rank cards and other Discord-related graphics
- π Code Sharing - Share code snippets via SourceBin
- πΈ Anime Images - Fetch waifu images with a simple API
- π§° Utility Functions - Various helper functions for common tasks
# Using npm
npm install kiutils
# Using yarn
yarn add kiutils
# Using pnpm
pnpm add kiutils
// Import the modules you need
const { Canvas, Discord, waifu, convertImage, ImageFormat } = require('kiutils');
// OR with ES modules
import { Canvas, Discord, waifu, convertImage, ImageFormat } from 'kiutils';
import { convertImage, ImageFormat } from 'kiutils';
import * as fs from 'fs';
// Convert an image to WebP format
const convertToWebP = async () => {
const buffer = await convertImage('input.jpg', ImageFormat.WEBP, {
quality: 80,
width: 800
});
fs.writeFileSync('output.webp', buffer);
console.log('Image converted successfully!');
};
convertToWebP();
import { Discord } from 'kiutils';
import * as fs from 'fs';
const createRankCard = async () => {
const rankCard = await new Discord().createRankCard({
username: { name: 'CoolUser#1234' },
level: { data: 15, display: true },
rank: { data: 12, display: true },
currentXP: { data: 500 },
requiredXP: { data: 1000 },
avatar: { source: 'https://i.imgur.com/example.png' },
status: { type: 'online' },
progressBar: {
bar: {
type: 'gradient',
color: ['#5865F2', '#EB459E']
}
}
});
fs.writeFileSync('rank-card.png', rankCard);
console.log('Rank card created!');
};
createRankCard();
import { waifu, WaifuType } from 'kiutils';
const getWaifuImage = async () => {
const imageUrl = await waifu(WaifuType.SFW);
console.log(`Waifu image URL: ${imageUrl}`);
};
getWaifuImage();
import { Canvas } from 'kiutils';
import * as fs from 'fs';
const createCanvas = async () => {
const canvas = new Canvas({
width: 800,
height: 400,
background: {
color: '#5865F2',
image: 'color'
},
fontColor: '#FFFFFF'
});
const buffer = await canvas.renderWithText('Hello World!', {
font: '40px Arial',
align: 'center'
});
fs.writeFileSync('canvas.png', buffer);
console.log('Canvas created!');
};
createCanvas();
import { bin } from 'kiutils';
const shareCode = async () => {
const code = `
function helloWorld() {
console.log('Hello from kiutils!');
}
helloWorld();
`;
const url = await bin(code);
console.log(`Code shared at: ${url}`);
};
shareCode();
For complete API documentation, please visit our documentation website.
Contributions, issues and feature requests are welcome! Feel free to check the issues page.
This project is MIT licensed.