katdrop/README.md

1.7 KiB

katdrop

a minimal, smooth file transfer service with 10-minute auto-deletion.

Backend API: The official backend is powered by a permanent Cloudflare Tunnel at https://katdrop-api.oiupoyt.space.

features

  • minimal dark interface with smooth interactive particle background
  • real-time backend status indicator (online / offline)
  • live upload byte progress and percentage
  • drag & drop files anywhere to upload instantly
  • 10-minute auto-deletion timer per file with live countdown
  • safe path verification and collision-free file naming
  • anti-abuse IP rate limiting (120 req/min, 25 uploads/5min)
  • storage quota guard (4GB cap protecting disk exhaustion)
  • delete token authorization (only uploader can delete their file)
  • anti-XSS download isolation (Content-Security-Policy: default-src 'none'; sandbox + force attachment)
  • strict CORS domain whitelist (*.oiupoyt.space, localhost)

configuration

The deployed frontend at https://katdrop.oiupoyt.space connects out of the box to the official permanent backend at https://katdrop-api.oiupoyt.space. No URL parameters or configuration required.

To connect to a custom private backend, pass ?api=...:

https://katdrop.oiupoyt.space/?api=https://your-custom-backend.com

usage

# install dependencies
npm install

# start server
npm start

Runs by default on http://localhost:3000 (or falls back to an available port if 3000 is in use).

endpoints

  • GET /health - health check & uptime
  • POST /upload - upload files (file)
  • GET /files - list active files with remaining TTL
  • GET /uploads/:filename - download file
  • DELETE /delete/:filename - delete file

license

MIT