Files
FileHost/README.en.md
T

3.8 KiB

PicHost

PicHost

Lightweight personal image hosting · Simple uploads, clean management

Self-hosted / Multi-user / Docker / API / Twikoo · Local disk or object storage

version CI Nuxt 4 Docker GPL-3.0

Docs · Screenshots · Features · Tech Stack · Quick Start · 简体中文


Screenshots

main has no public demo. cloudflare branch live demo: pic.roven.cc

API Gallery
API Gallery
Storage Settings
Storage Settings

Features

  • Drag, click, or Ctrl+V paste — server-side WebP, Referer hotlink protection
  • Multi-user — login with slider, Turnstile, or Cap verification; optional registration; users see only their images
  • Multi-backend storage — local disk + S3-compatible (R2 / COS / OSS / AWS); hybrid proxy / public URLs
  • Gallery — browse, search, filter by storage/source, grid/list views, batch delete; stats overview and source breakdown
  • API & Twikoo — global / per-user tokens; POST /api/index.php compatible
  • Zero-config Docker — first-run web wizard, no secrets upfront

Tech Stack

Layer Technologies
Frontend Nuxt 4 · Nuxt UI 4 · Vue 3 · Tailwind CSS 4 · TypeScript
Backend Nitro (node-server) · REST API
Data SQLite · local data/pichost.db
Images sharp (server-side WebP)
Storage Local disk · S3-compatible (AWS SDK · R2 / COS / OSS, etc.)
i18n @nuxtjs/i18n (zh-CN / English)
Quality & docs Vitest · VitePress docs site
Deploy Docker · Node.js 22

Quick Start

docker run -d \
  --name pichost \
  -p 6892:6892 \
  -v ./data:/data \
  --restart unless-stopped \
  muxui/pichost:latest

Open http://<host>:6892 and complete the setup wizard.

Full guide (env vars, upgrades, dual-domain setup, API, Twikoo, reverse proxy, local dev, etc.): Documentation.

Branch Notes
main Default: multi-backend, dual-domain, unified images/ storage
cloudflare Cloudflare R2 only; live demo pic.roven.cc

License

GPL-3.0

LINUX DO