Changelog

What’s new in UploadKit

Cloud image transformations & Supabase migration

UploadKit Cloud can now resize, crop, optimize, and convert images at the edge. We also shipped a resumable migration workflow for moving existing Supabase Storage buckets without losing URL mappings.

Production image pipeline

  • Width, height, fit, quality, and AVIF, WebP, JPEG, PNG, or automatic format negotiation through Cloudflare Images
  • Stable public URLs for permanent embeds and expiring signed URLs for temporary delivery
  • Readable, HMAC-protected recipes such as w_480,h_320,fit_cover,q_78,f_webp; previously issued Base64URL recipes remain valid
  • Variants are generated on demand and cached globally without duplicating the original object in R2
  • Monthly unique-variant quotas for Pro, Team, and Enterprise, with safe reservation support for standalone MongoDB as well as replica sets

Dashboard, SDK & MCP

  • New responsive Transformation Studio with source search, pagination, presets, custom recipes, live usage, and history
  • One-click production HTML generation with editable display dimensions, alt text, lazy loading, and stable public URLs
  • transformImage() in the Core SDK and transform_image in the MCP server, keeping API keys in trusted server environments
  • New homepage section and complete concept, REST API, SDK, quota, caching, security, and deployment documentation

Supabase Storage migration

  • uploadkit migrate-supabase streams bucket objects into UploadKit with configurable concurrency, prefix filtering, dry runs, and tier-aware size checks
  • Resumable progress files survive interruptions and preserve an old-to-new URL mapping for every migrated object
  • uploadkit rewrite-urls applies the generated mapping to application files after migration

Raycast uploads, privacy controls & platform polish

  • New Raycast extension for uploading files directly from the desktop
  • Google Tag Manager and subscription conversion tracking, gated behind explicit analytics consent
  • File and project deletion now removes the corresponding R2 objects and reclaims recorded storage usage
  • Redesigned landing page, resilient copy actions, corrected navigation and footer destinations, and more accurate pricing copy
  • Responsive dashboard shell and mobile navigation fixes across compact screens

UploadBeam & uploadkit CLI

UploadBeam

Apple Intelligence-style animated border beam for upload components. New <UploadBeam> wrapper, beam prop on all dropzones and buttons, and a standalone <UploadButtonBeam> variant.

uploadkit CLI

  • npx uploadkit init — detects your framework and wires UploadKit in under 60 seconds
  • npx uploadkit add <component> — inserts components shadcn-style
  • npx uploadkit restore — rolls back changes safely
  • Supports Next.js (app/ and src/app/), SvelteKit, Remix, and Vite+React

create-uploadkit-app, blog & docs refresh

create-uploadkit-app CLI

  • npx create-uploadkit-app my-app — scaffolds a new project with 4 templates: Next.js 16, SvelteKit, React Router v7, Vite+React
  • Interactive prompts, auto package manager detection

Blog

  • 16 SEO-optimized posts covering uploads, R2, security, MCP, and framework tutorials
  • MDX + Shiki syntax highlighting, RSS feed, dynamic OG images, JSON-LD structured data

Documentation updates

  • New quickstart leading with existing-project install
  • CLI guides for both uploadkit and create-uploadkit-app
  • UploadBeam + UploadButtonBeam component docs

Official MCP server — stdio + remote HTTP

UploadKit is now AI-native. Claude Code, Cursor, Windsurf, Zed, ChatGPT, and Claude.ai can generate UploadKit code with first-class knowledge of every component, scaffold, and docs page — no more hallucinated props or outdated snippets.

Two transports, one surface

  • stdio — install in any MCP-aware IDE with npx -y @uploadkitdev/mcp. Runs locally, zero latency, works offline.
  • Remote Streamable HTTP https://api.uploadkit.dev/api/v1/mcp, stateless, public read-only, CORS-open. Paste into ChatGPT custom connectors or Claude.ai web.

11 tools, 88+ docs pages indexed

  • Component discovery — list_components, get_component, search_components
  • Scaffolding — scaffold_route_handler, scaffold_provider, get_install_command
  • BYOS setup — get_byos_config for S3, R2, GCS, Backblaze B2
  • Full docs search — search_docs, get_doc, list_docs (88+ pages indexed at build time)
  • Onboarding — get_quickstart end-to-end Next.js setup

Published everywhere

Full guide

See docs.uploadkit.dev/docs/guides/mcp for setup instructions for every editor, curl smoke tests, Docker self-host, and the full tool reference.

40+ upload components, landing showcase & full docs

The biggest component drop in UploadKit history. 36 new premium components across 7 categories — every one with Motion animations, CSS fallbacks, dark mode, a11y, and a live interactive doc page.

Premium Dropzones (6 new)

  • UploadDropzoneGlass — Vercel/Linear frosted glass with indigo glow halo
  • UploadDropzoneAurora — Apple/Supabase animated conic-gradient mesh
  • UploadDropzoneTerminal — Raycast/Warp monospace prompt with tail log
  • UploadDropzoneBrutal — Neobrutalist thick borders with stamp animation
  • UploadDropzoneMinimal — Stripe/Resend ultra-clean with subtle border pulse
  • UploadDropzoneNeon — Cyberpunk neon glow traces, scanline overlay, monospace

Premium Buttons (4 new)

  • UploadButtonShimmer — Shimmer sweep gradient CTA
  • UploadButtonMagnetic — Apple-style cursor-attracted spring
  • UploadButtonPulse — Calm radial ring pulse with squeeze-on-click
  • UploadButtonGradient — Instagram/TikTok rotating conic gradient ring

Specialty Components (6 new)

  • UploadAvatar — Circular crop with SVG progress ring
  • UploadInlineChat — ChatGPT/Linear composer with animated chips
  • UploadSourceTabs — Cloudinary/Uppy multi-source: Device, URL, Clipboard tabs
  • UploadScannerFrame — Stripe Identity viewfinder with corner brackets and sweep line
  • UploadBookFlip — Issuu/Apple Books 3D book with page-flip progress
  • UploadVinyl — Spotify/Bandcamp vinyl record with spinning grooves

Themed Dropzones (4 new)

  • UploadEnvelope — WeTransfer 3D envelope with SVG flap animation and wax seal
  • UploadBlueprint — CAD/technical schematic with grid lines, crosshairs, and block-char progress
  • UploadDataStream — Matrix-style character rain that accelerates during upload
  • UploadStickyBoard — Miro/FigJam corkboard with colored sticky notes

Motion & Progress (10 new)

  • UploadProgressRadial — Activity-ring with pathLength fill and splash
  • UploadProgressBar — Horizontal bar with shimmer sweep
  • UploadProgressWave — Spotify waveform bars filling left-to-right
  • UploadProgressLiquid — Apple-style dual sine-wave liquid fill
  • UploadProgressStacked — iOS AirDrop vertical stack
  • UploadProgressOrbit — Orbiting file icons that land on complete
  • UploadCloudRain — Cloud SVG fills as files upload
  • UploadBento — Bento grid with layoutId reorder
  • UploadParticles — Particle constellation converging to center
  • UploadStepWizard — 5-step select → preview → confirm → upload → done

Multi-file Visualizers (6 new)

  • UploadGalleryGrid — Pinterest image gallery with per-cell progress rings
  • UploadTimeline — GitHub/Linear vertical timeline with status nodes
  • UploadPolaroid — Photo stack with polaroid developing effect
  • UploadKanban — Trello-style pipeline columns with layoutId transitions
  • UploadAttachmentTray — Discord/iMessage horizontal scrollable strip
  • UploadNotificationPanel — Google Drive-style inline upload manager card

Infrastructure

  • New landing page Component Showcasesection between Features and Pricing — 16 curated components with horizontal pill selector, live preview stage, and “Simulate upload” button
  • All 36 new components have dedicated MDX documentation pages with <ComponentPreview> wrappers, props tables, theming guides, and a11y notes
  • UploadKitProvider now accepts an optional client prop for dependency injection — used by docs previews and tests with a mock client
  • motion is an optional peerDependency across all premium components — CSS keyframe fallbacks render when Motion is not installed. prefers-reduced-motion respected throughout
  • Docs navigation reorganized into 7 sections: Classics, Premium Dropzones, Premium Buttons, Specialty, Themed Dropzones, Motion & Progress, Multi-file Visualizers
  • mergeClass() utility upgraded to variadic args

Polish pass, storage reclaim & MIT license

A big quality-of-life release touching the landing, dashboard, publishing pipeline and cleanup infrastructure.

  • SDK packages (@uploadkitdev/core, @uploadkitdev/react, @uploadkitdev/next) are now published under the MIT license with author, repository, homepage and keywords metadata — the npm landing page finally renders correctly
  • Landing page polish: animated DarkVeil WebGL hero background, staggered BlurText headline, SpotlightCard cursor glow on feature cards, and a new install command with package-manager tabs and copy-to- clipboard feedback
  • New AnimatedButton component powering every CTA on the site — sheen sweep on hover, cursor-tracking radial, icon translate on focus
  • Dashboard gets the same treatment: metric cards now spring- animate to their values (CountUp) and glow on hover, project cards fade in with a cascading stagger, the /login page ships a dark animated background
  • Bulk file delete in the dashboard now actually removes objects from R2 and decrements your usage counter — previously it only soft-marked the rows, leaving orphaned bytes in storage
  • Account deletion now cleans the Auth.js accounts and sessions collections too — you can delete your account and log back in with the same provider without hitting a duplicate-key error
  • New daily cron that reclaims storage from abandoned free-tier accounts: warning email at day 23 and file cleanup at day 30. Paid subscriptions are fully exempt as long as they’re active
  • Mobile fixes: the install command pill no longer overflows the viewport, the code window shrinks to fit small screens, and the navbar hamburger menu closes when you tap a link, on ESC, and anywhere you’d expect
  • Real sitemaps for both uploadkit.dev and docs.uploadkit.dev — every MDX docs page is now enumerated for Search Console

Initial Launch

UploadKit is live. Here’s what shipped in the initial release:

  • Managed file storage powered by Cloudflare R2 with global CDN and zero egress fees
  • @uploadkitdev/reactUploadButton, UploadDropzone, and UploadModal components with CSS custom property theming
  • @uploadkitdev/next — Next.js App Router handler, NextSSRPlugin, and withUk Tailwind wrapper
  • Backend adapters for Express, Fastify, and Hono — same FileRouter, different runtime
  • BYOS (Bring Your Own Storage) — use your own S3/R2 bucket with zero frontend changes
  • Dashboard with project management, file browser, API key management, upload logs, and usage metrics
  • Free tier: 5 GB storage, 10 GB bandwidth, 1,000 uploads/month
  • config.mode, onBeforeUploadBegin, uploadProgressGranularity, and data-uk-element theming attributes