@dropkit/sdk
v0.3.0
Published
dropkit SDK: file uploads and signed URLs for any JS runtime.
Downloads
29
Maintainers
Readme
@dropkit/sdk
File upload SDK for dropkit. Works in any JS runtime: browsers, Node, Bun, Deno, Cloudflare Workers, Vercel Edge.
Install
bun add @dropkit/sdkUse
import { dropkit } from '@dropkit/sdk';
const client = dropkit({ key: process.env.DROPKIT_KEY });
const { data, error } = await client.upload(file);
if (error) throw new Error(error.message);
console.log(data.url);Every method returns { data, error }. Exactly one is non-null.
Methods
client.upload(file, { visibility?, metadata?, onProgress?, signal? });
client.sign(fileId, { expiresIn?, transform? });
client.delete(fileId);Pass transform to bake image-resize params into the signed URL so it works directly as an <img src>:
const { data } = await client.sign(fileId, {
transform: { w: 200, h: 200, fit: 'cover', format: 'webp' },
});Functional exports
If you prefer standalone functions, the factory is optional:
import { upload, signFileUrl, deleteFile } from '@dropkit/sdk';
await upload(file, { key: 'pk_live_...' });CLI
The CLI is a separate package. See @dropkit/cli:
npx @dropkit/cli@latest initDocs
https://dropkit.app/docs
