Skip to content
smallPict
Mulai Gratis

SDK Node.js & TypeScript

Dokumentasi paket resmi @smallpict/sdk untuk aplikasi Node.js, Next.js, dan TypeScript.

SDK resmi SmallPict untuk Node.js dilengkapi dengan definisi tipe TypeScript penuh, penandatanganan HMAC otomatis, dan penanganan retry terintegrasi.


Instalasi

Shell
npm install @smallpict/sdk# ataubun add @smallpict/sdk# ataupnpm add @smallpict/sdk

Contoh Penggunaan Cepat

TypeScript
import { SmallPict } from '@smallpict/sdk';import fs from 'node:fs';
const client = new SmallPict({  apiKey: process.env.SMALLPICT_API_KEY!,  secretKey: process.env.SMALLPICT_SECRET_KEY!,  retryConfig: { maxRetries: 3 }});
// 1. Mode Lossy (Bawaan: hemat ukuran 70-85%)const photoBuffer = fs.readFileSync('foto-produk.jpg');const lossyResult = await client.optimize(photoBuffer, {  format: 'avif',  quality: 80,  maxWidth: 1920,  lossless: false // Bawaan: kompresi lossy});console.log(`URL Lossy: ${lossyResult.url} (Hemat ${lossyResult.savingsPercentage}%)`);
// 2. Mode Lossless (Pixel-perfect untuk logo & ikon tajam)const logoBuffer = fs.readFileSync('logo.png');const losslessResult = await client.optimize(logoBuffer, {  format: 'webp',  lossless: true // Mengaktifkan mode lossless tanpa degradasi piksel});console.log(`URL Lossless: ${losslessResult.url} (Hemat ${losslessResult.savingsPercentage}%)`);
// 3. Cek kuota bulananconst quota = await client.getQuota();console.log(`Pemakaian: ${quota.bytesUsed} byte`);