mediaguru
v1.0.0
Published
MediaGuru universal document and media processing toolkit. Powered by Kontyra.
Readme
MediaGuru Unified Toolkit
Powered by Kontyra
MediaGuru is a premium, developer-focused npm CLI and terminal toolkit designed to generate, convert, process, optimize, and extract data from documents and media. Built using pure TypeScript, ES Modules, Sharp, PDF-Lib, Tesseract, and Playwright, it delivers state-of-the-art results for everyday developer tasks.
🚀 Key Features
- Interactive Mode: Simply run
mediaguruto launch a step-by-step terminal wizard. - PDF Engine: Convert Markdown/HTML to PDF via headless browser, and merge, split, extract, or compress PDFs.
- Image Processor: Fast resizing, watermarking, format conversion, and extensible solid boundary background removal.
- OCR Text Extractor: Convert images to text with direct TXT, Markdown, or JSON exporting.
- Playwright Screenshotter: Capture responsive website layouts (with mobile emulation & full-page scroll height options).
- Text-to-Image Creator: Generate stunning, visually polished social card assets, posters, quotes, and header banners.
- Folder Compressor: Compress images or entire assets directories, showing file space statistics.
- Batch Operations: Glob-expanded batch runs for file conversions and PDF compilation.
- Extensible Architecture: Highly decoupled design allowing plugins to dynamically add custom commander actions.
📦 Installation & Setup
Clone the repository and install dependencies:
cd mediaguru
npm install
npx playwright install chromiumTo build and compile:
npm run buildLink command globally (optional):
npm link🛠️ CLI Command Reference
MediaGuru registers mediaguru and mguru binary aliases.
1. Interactive Mode
mediaguru(Launches Inquirer wizard menu)
2. PDF Tools
# Markdown / HTML compilation
mediaguru pdf notes.md
mediaguru pdf invoice.html
# PDF Operations
mediaguru pdf merge a.pdf b.pdf c.pdf
mediaguru pdf split report.pdf
mediaguru pdf extract report.pdf
mediaguru pdf compress report.pdf3. Image Tools
mediaguru image resize photo.jpg 800x600
mediaguru image convert photo.png webp
mediaguru image watermark image.jpg logo.png
mediaguru image remove-bg photo.jpg4. QR Generator
mediaguru qr https://kontyra.com
mediaguru qr https://kontyra.com --svg
mediaguru qr https://kontyra.com --size 5005. OCR Engine
mediaguru ocr receipt.jpg
mediaguru ocr receipt.jpg --export markdown6. Screenshot Engine
mediaguru screenshot https://example.com
mediaguru screenshot https://example.com --full-page
mediaguru screenshot https://example.com --mobile7. Text-to-Image Creator
mediaguru text2img "Welcome to Kontyra"
mediaguru text2img "Code is poetry" --theme glass --type quote --author "Developer"8. Compression
mediaguru compress photo.jpg
mediaguru compress ./assets9. Batch Processing
mediaguru batch "images/*.png" --convert webp
mediaguru batch "docs/*.md" --pdf10. Data Exporter & Configs
# Export system settings
mediaguru export json
mediaguru export markdown
mediaguru export csv
# Config panel
mediaguru config⚙️ Configuration Profile
Configuration is stored in ~/.mediagururc.json.
- Default Image Format: Format used for resizes and text-to-image (
webp,png,jpg,jpeg). - PDF Rendering Engine: Output compiler (
playwright,local). - Compression Quality: Percent quality for sharp operations (
1-100). - Screenshot Resolution: Standard resolution width/height (
e.g., 1280x720). - Output Folder: Destination for processed files.
🔌 Extensible Plugin Architecture
MediaGuru defines an extensible plugin framework. You can register custom modules with lifecycle hooks:
import { IMediaGuruPlugin } from './plugins/index.js';
const MyAiPlugin: IMediaGuruPlugin = {
name: 'mediaguru-ai-generator',
version: '1.0.0',
description: 'AI Image & Transcription Module',
async beforeCommand(commandName, args) {
console.log(`Command ${commandName} is starting...`);
},
registerCustomCommands(program) {
program
.command('ai-generate')
.description('Generate images using AI model endpoints')
.argument('<prompt>', 'Prompt for image generation')
.action(async (prompt) => {
console.log(`Generating AI graphics for prompt: "${prompt}"...`);
});
}
};📝 Verification Tests
Run the automated test suite to verify the core engines:
npm run build
npm testOutputs will be saved in the ./test_sandbox folder.
Terminal Footer Branding
Powered by Kontyra