حزمة SDK الرسمية لـ Node.js وTypeScript
حزمة @smallpict/sdk المخصصة لبيئات Node.js وNext.js وExpress وTypeScript.
تقدم حزمة Node.js الرسمية دعماً صارماً للأنواع عبر TypeScript، وتدفق البيانات (streams)، وتوافقاً مع Node.js 18+ وNext.js وبيئات Edge.
التثبيت
Shell
npm install @smallpict/sdk# أو عبر pnpmpnpm add @smallpict/sdk# أو عبر yarnyarn add @smallpict/sdkمثال كامل للاستخدام
TypeScript
import { SmallPictClient } from "@smallpict/sdk";import fs from "fs";
// 1. تهيئة العميل ببيانات الاعتمادconst client = new SmallPictClient({ apiKey: process.env.SMALLPICT_API_KEY!, secretKey: process.env.SMALLPICT_SECRET_KEY!, maxRetries: 3, timeoutMs: 10000});
async function main() { try { // 2. تحسين صورة محلية عبر Buffer const imageBuffer = fs.readFileSync("./assets/hero.jpg");
const result = await client.optimize({ file: imageBuffer, filename: "hero.jpg", format: "avif", quality: 80, maxWidth: 1920 });
console.log("اكتمل التحسين بنجاح:"); console.log("- رابط CDN:", result.url); console.log("- نسبة التوفير:", result.savingsPercentage + "%"); console.log("- الحجم النهائي:", result.optimizedSize, "بايت");
// 3. الاستعلام عن الرصيد المتبقي const quota = await client.getQuota(); console.log("- الحصة المتاحة:", quota.remaining, "/", quota.total);
} catch (error) { console.error("حدث خطأ أثناء المعالجة:", error); }}
main();