Skip to content

Repository files navigation

ruby-tool logo

⟩_ ruby-tool

A high-performance, code-first AI utility suite housed in a Blueprint Terminal aesthetic.

FeaturesArchitectureDeploymentLocal Development


❯ Overview

Originally forged as a feature for the WhatsApp Baileys bot Ruby, ruby-tool has been extracted and engineered into a standalone, ultra-lean web application. It delivers production-grade AI image processing and media downloading through a strictly functional, zero-framework terminal interface.

❯ Tool Suite

  • [x] --rmbg (Background Removal): High-precision subject isolation powered by Pixa AI, featuring an automatic on-device fallback (Transformers.js) for offline resilience.
  • [+] --hd (Image Enhancer): AI-driven resolution upscaling utilizing the Betabotz API (with ImgUpscaler fallback).
  • [@] --ig (Instagram Downloader): Direct media extraction for Reels and posts.
  • [>] --tt (TikTok Downloader): Watermark-free video extraction.
  • [#] --qr (QR Generator): High-error-correction local QR code generation.

❯ Architecture & Features

The interface is engineered around the Blueprint Terminal identity: a strict, flat-by-default, high-contrast dark mode environment that completely rejects modern "AI slop" (no blurry drop shadows, no bloated frameworks).

  • Zero-Framework Frontend: Pure HTML, CSS, and Vanilla JS.
  • Tactile Batch Processing: Native drag-and-drop support with concurrent processing pipelines.
  • Side-by-Side Diagnostics: Instant before/after image validation.
  • Serverless Ready: Express.js proxy architecture designed to bypass CORS seamlessly on Vercel or any Node.js environment.

❯ Deployment

Deploy to Vercel (Recommended)

The infrastructure is pre-configured for Vercel's serverless edge.

  1. Push this repository to GitHub.
  2. Import the repository into Vercel.
  3. Vercel automatically detects the static frontend and maps the api/ directory to serverless backend functions.
  4. Add your BETABOTZ_API_KEY to the Vercel Environment Variables.

Self-Hosted (Home Server / VPS)

1. Clone & Setup

git clone https://github.com/bluebleaze/ruby-tools.git
cd ruby-tools
npm install

2. Environment Configuration

Create a .env file in the root directory:

BETABOTZ_API_KEY=your_api_key_here

(Ensure your server IP is whitelisted in the Betabotz dashboard.)

3. Execution

# Development
node server.js

# Production (Daemonized via pm2)
pm2 start ecosystem.config.cjs
pm2 save
pm2 startup

The server binds to http://localhost:3456.

4. Public Exposure (Cloudflare Tunnel)

pm2 start cloudflared -- tunnel --url http://localhost:3456
pm2 save

❯ Project Structure

ruby-tools/
├── index.html              # Main interface
├── public/
│   ├── style.css           # Blueprint Terminal design system
│   ├── script.js           # Vanilla JS core logic & processing queue
│   └── favicon.svg         
├── api/                    # Serverless endpoints
│   ├── removebg.js
│   └── enhance.js
├── server.js               # Node.js static server & CORS proxy
├── vercel.json             # Vercel routing configuration
└── ecosystem.config.cjs    # PM2 process management

❯ License

Open Source. Managed by GPL 3-0.

About

Open source Self-hosting compatible tools(e.g: background remover,tiktok downloader,instagram downloader,enchance photo & qr-with-logo generator) website because i need these tools so bad :p

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages