# Storage

> File storage - uploads, CDN, blobs. Use when handling files.

- Skill: `majiayu000/storage-2` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds add majiayu000/storage-2`
- Raw SKILL.md: https://api.skillmd.com/api/skills/majiayu000/storage-2/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: majiayu000 (https://skillmd.com/u/majiayu000)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/majiayu000/storage-2

---


# Storage Guideline

## Tech Stack

* **Storage**: Vercel Blob
* **Framework**: Next.js (with Turbopack)
* **Platform**: Vercel

## Non-Negotiables

* All file uploads must be validated (type, size, content)
* Signed URLs for private content access
* No user-uploaded content served from main domain (XSS prevention)
* File deletion must cascade with parent entity deletion

## Context

File storage is deceptively complex. Users expect uploads to just work, but there are many ways for it to fail — large files, slow connections, wrong formats, malicious content.

Vercel Blob is the SSOT for file storage. No custom implementations.

## Driving Questions

* What happens when an upload fails halfway?
* How are large files handled without blocking?
* What file types are allowed and how is it enforced?
* How long are files retained after entity deletion?
* What's the storage cost and is it sustainable?

