Official JavaScript/TypeScript client libraries for dropkit: file upload API and CDN.
This repo is a monorepo. The dropkit service itself is proprietary; the client libraries here are MIT-licensed so you can read them, fork them, and ship them in your app.
| package | description |
|---|---|
@dropkit/sdk |
Upload files, sign private URLs, delete. Works in browsers, Node, Bun, Deno, Cloudflare Workers, Vercel Edge. |
@dropkit/cli |
npx @dropkit/cli init to wire dropkit into any JS/TS project. dropkit upload <file> for one-off uploads (zero signup via the public demo). |
Zero-signup demo, no account needed:
npx @dropkit/cli@latest upload ./photo.pngInstall into a project:
npx @dropkit/cli@latest initSDK usage:
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);Full docs at https://dropkit.app/docs. Agents and LLMs: read https://dropkit.app/llms.txt.
Bugs and feature requests: open an issue. For new framework bindings (@dropkit/react, @dropkit/nextjs, @dropkit/svelte), open a discussion first so we can coordinate the API surface.
bun install
bun run typecheck
bun run buildWe use changesets for releases. After a change that affects a public package:
bun run changesetFollow the prompt, commit the generated file, and open a PR. Merging triggers the release workflow.
MIT. See LICENSE.
The dropkit service (storage-service) is closed-source; the libraries in this repo are not.