pixelpanda
v0.1.1
Published
Official JavaScript/TypeScript SDK for the PixelPanda API — AI background removal, upscaling, enhancement, product photography, ad packs and UGC video
Maintainers
Readme
PixelPanda JavaScript SDK
Official JavaScript/TypeScript client for the PixelPanda API — AI image processing from code: background removal, print-resolution upscaling, photo enhancement, prompt-based editing, reverse-prompting, AI product photography, complete ad packs and UGC video.
Zero dependencies. Node 18+. Full TypeScript types. ESM + CommonJS.
Install
npm install pixelpandaQuickstart
import PixelPanda from "pixelpanda";
const pp = new PixelPanda("pk_live_..."); // or set PIXELPANDA_API_KEY
// Upscale AI art to print resolution (2x/4x = 1 credit, 8x = 2)
const up = await pp.upscale("midjourney_art.png", { scale: 4 });
console.log(up.result_url);
// Remove a background → transparent PNG (1 credit)
const cut = await pp.removeBackground("product.jpg");
// Edit with a prompt — FLUX Kontext (2 credits)
const edited = await pp.edit("photo.jpg", "make the background pure white");
// Reverse-engineer an image into AI-art prompts (1 credit)
const prompts = await pp.imageToPrompt("https://example.com/reference.jpg");
console.log(prompts.prompts.midjourney);
// Zero-setup product photography: 1 image in, 4 scene photos out (1 credit each)
const job = await pp.generateProductPhotos("product.jpg", { numPhotos: 4 });
console.log(job.results);
// Full ad pack from a product page URL (9 credits, +50 with UGC video)
const pack = await pp.createAdPack("https://mystore.com/products/mug");
const done = await pp.getAdPack(pack.job_id); // poll until completeEvery image argument accepts a local path, Uint8Array/ArrayBuffer, or a public URL.
API surface
| Method | Credits |
|---|---|
| upscale(image, { scale, quality }) | 1 (2x/4x), 2 (8x) |
| removeBackground(image) | 1 |
| enhance(image) | 1 |
| edit(image, prompt) | 2 |
| imageToPrompt(image) | 1 |
| generateProductPhotos(image, { numPhotos }) | 1/photo |
| uploadProduct(image) / generateScenes(uuid) | free / 1 per scene |
| createAdPack(url, { includeVideo }) / getAdPack(id) | 9 (+50 video) |
| generateVideo(image, { script }) / getVideoJob(id) | 50 |
| getJob(id) / waitForJob(id) | free |
Async generation methods (generateProductPhotos, generateScenes) wait for
completion by default; pass { wait: false } to get a job_id and poll yourself.
Errors
API failures throw PixelPandaError with statusCode and detail
(401 bad key, 402 insufficient credits).
Get an API key
Sign up free at pixelpanda.ai and copy the key from your profile. Docs: pixelpanda.ai/developers · More integrations: pixelpanda.ai/integrations
License
MIT © DynamicDuo LLC
