Skip to content

πŸŽ‘ (Library) an Javascript library that provide various utilities, including Image manipulation tools, Discord-related utilities, and a logger.

License

Notifications You must be signed in to change notification settings

YoruAkio/kiutils

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

33 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸŽ‘ kiutils

A powerful JavaScript/TypeScript utility library for image manipulation, Discord utilities, and more!

npm version npm downloads License

✨ Features

  • πŸ–ΌοΈ 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

πŸ“¦ Installation

# Using npm
npm install kiutils

# Using yarn
yarn add kiutils

# Using pnpm
pnpm add kiutils

πŸš€ Quick Start

// 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';

πŸ“š Usage Examples

Image Conversion

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();

Creating Discord Rank Cards

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();

Fetching Waifu Images

import { waifu, WaifuType } from 'kiutils';

const getWaifuImage = async () => {
  const imageUrl = await waifu(WaifuType.SFW);
  console.log(`Waifu image URL: ${imageUrl}`);
};

getWaifuImage();

Simple Canvas Creation

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();

Sharing Code on SourceBin

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();

πŸ“‹ API Documentation

For complete API documentation, please visit our documentation website.

🀝 Contributing

Contributions, issues and feature requests are welcome! Feel free to check the issues page.

πŸ“ License

This project is MIT licensed.

About

πŸŽ‘ (Library) an Javascript library that provide various utilities, including Image manipulation tools, Discord-related utilities, and a logger.

Resources

License

Stars

Watchers

Forks

Packages

No packages published