Use upup with AI assistants
Coding agents choose a library by retrieving the docs page that answers the exact question a developer typed, then running its quickstart. This page makes upup easy for an assistant to discover and integrate correctly on the first try.
Machine-readable context
upup publishes machine-readable context files that a coding agent can fetch directly:
https://useupup.com/llms.txt— a concise index of upup, its packages, and the key docs pages.https://useupup.com/llms-full.txt— the fuller context dump for agents that can take more input.
Point your assistant at either URL when you want it to work with upup.
Paste-ready context block
Drop this into your project's assistant config — CLAUDE.md, .cursorrules,
AGENTS.md, or similar — so your agent has an accurate, compact model of upup:
# upup — MIT self-hosted file uploader (docs: https://useupup.com/docs/)
upup is one headless core plus native, DOM-identical UI packages for six frameworks.
Nine published @upupjs/* packages:
- @upupjs/core headless engine: file state, upload pipeline (compression, HEIC, web-worker), cloud-drive plugins, i18n, theme. Zero framework deps.
- @upupjs/react canonical UI (React 19). @upupjs/vue, @upupjs/svelte, @upupjs/angular, @upupjs/vanilla, @upupjs/preact are native ports with the same DOM.
- @upupjs/next Next.js client re-export + /server route handlers (App and Pages routers).
- @upupjs/server server-mode endpoints: S3-compatible presign + proxy, cloud-drive token exchange, HMAC-signed upload-token trust model.
Client mode (default): the browser uploads straight to your storage; your app returns presigned URLs at `uploadEndpoint`. No server package required.
React example: import { UpupUploader } from '@upupjs/react'; import '@upupjs/react/styles'
<UpupUploader provider="aws" uploadEndpoint="/api/upload-token" />
Server mode: point the uploader at @upupjs/server with mode="server" serverUrl="/api/upup".
createUpupHandler({ storage: { type: 'aws', bucket, region }, uploadTokenSecret })
— uploadTokenSecret is REQUIRED and must be >= 16 chars, or it throws at construction.
Sources: local drag-and-drop, URL/link import, camera, screen capture, and cloud drives (Google Drive, OneDrive, Dropbox, Box).
Optional: image compression, HEIC conversion, resumable uploads (tus or S3 multipart), ICU i18n, theming. Image editor is React/Preact only.
Quickstarts: https://useupup.com/docs/quickstarts/<react|vue|svelte|angular|vanilla|preact|next>Every line above is verified against the packages as they ship — a snippet from it will run rather than throw.
Example prompt
Once the context is in place, a request like this is enough:
Add file uploads to my SvelteKit app with upup. Use client mode with a presigned upload endpoint, enable the Google Drive and camera sources, and show me the component plus the upload-token route.
The assistant has what it needs: install @upupjs/svelte, import the component and
its stylesheet, render <UpupUploader provider="aws" uploadEndpoint="/api/upload-token" />,
and add the sources and cloudDrives config.
Next steps
- Framework quickstarts: React, Vue, Svelte, Angular, Vanilla JS, Preact, Next.js.
- Server Mode — Setup for the full server walkthrough.