Paste. Share. Disappear.
An ephemeral clipboard with a time limit. Paste text or images, share the link, and watch it auto-expire.
- 📋 Share code snippets — Paste code and share the link; expires automatically
- 🔐 Send passwords — Share credentials securely; they disappear after viewing
- 📱 Transfer between devices — Paste on phone, copy on desktop (or vice versa)
- 🖼️ Quick image sharing — Upload screenshots or photos with a self-destructing link
- 🤝 Team collaboration — Share quick notes without cluttering chat
- 🎫 One-time secrets — API keys, tokens, or sensitive info that shouldn't persist
- Next.js 16 (App Router)
- TypeScript
- Tailwind CSS v4 + Apple glass design system
- Jotai for state management
- Upstash Redis for serverless storage (Vercel)
- In-memory store for local development
## Development
```bash
# Install dependencies
pnpm install
# Get a free temporary Upstash Redis (no account needed)
pnpm redis
# Start dev server (HTTPS, port 3210)
pnpm dev
# Open https://localhost:3210Note: Local dev uses a real Upstash Redis instance (same as production). Data persists for 3 days. To use in-memory mode instead, comment out the env vars in .env.local.
-
Create Upstash Redis:
- Go to Upstash Console
- Create a new Redis database (free tier: 10,000 commands/day)
- Copy the
UPSTASH_REDIS_REST_URLandUPSTASH_REDIS_REST_TOKEN
-
Deploy:
pnpm add -g vercel vercel # Add environment variables vercel env add UPSTASH_REDIS_REST_URL vercel env add UPSTASH_REDIS_REST_TOKEN # Deploy to production vercel --prod
Or connect via Vercel Dashboard:
- Push to GitHub
- Import project in Vercel
- Add environment variables from Upstash
Any platform that supports Node.js will work. You just need a Redis server for storage.
Option A: Managed Redis (easiest)
- Upstash — Serverless, pay-per-request
- Redis Cloud — Free tier available
- Amazon ElastiCache — AWS managed
Option B: Self-hosted Redis
# On your server
sudo apt install redis-server
sudo systemctl enable redis-server
# Verify it's running
redis-cli ping
# Should return: PONGSet these on your hosting platform:
UPSTASH_REDIS_REST_URL=https://your-redis-instance.com
UPSTASH_REDIS_REST_TOKEN=your-tokenFor self-hosted Redis with REST API, use Lettuce or Redis with a REST proxy.
If your Redis uses the standard protocol (not REST), you'll need to modify src/lib/store.ts to use a Redis client like ioredis.
# Build
pnpm build
# Start
pnpm start -p 3000| Variable | Required | Description |
|---|---|---|
UPSTASH_REDIS_REST_URL |
For storage | Redis REST URL |
UPSTASH_REDIS_REST_TOKEN |
For storage | Redis REST token |
Without these variables, the app uses in-memory storage (data resets on restart).
MIT