{"repo":"htlin222/img-hosting","free":true,"listed":false,"github":"https://github.com/htlin222/img-hosting","clone":"git clone https://github.com/htlin222/img-hosting.git","description":"Private, self-hosted, Imgur-shaped image host on Cloudflare Workers (R2 + D1) — with a Claude Code skill + CLI.","language":"TypeScript","stars":12,"topics":["claude-code","cloudflare-d1","cloudflare-r2","cloudflare-workers","edge-computing","file-storage","hono","image-hosting","imgur-api","rest-api"],"license":"MIT","category":"api-integrations-sdks","readme_excerpt":"img-hosting by Lin Hsieh-Ting · self-hosted, single-key, edge-native image hosting 🌐 Language: English · 繁體中文 A private, self-hosted image host that runs on Cloudflare Workers with an Imgur-shaped REST API , a minimalism web UI behind Cloudflare Access (OAuth) , a thin bash CLI , and a Claude Code skill so AI agents can upload too. Nothing in the committed repo carries a real account ID; every secret lives in .dev.vars / wrangler secret / a gitignored wrangler.toml . Architecture - R2 stores the image bytes. - D1 stores metadata (id, deletehash, title, mime, dimensions, …). - Hono routes the API. - Rate limiting via Cloudflare's ratelimit binding (per IP / per key). - Image resizing via Cloudflare's image transformations ( ?w= , ?h= , ?fit= , ?q= ) — requires \"Transform images\" enabled on your zone. --- Setup guide Read top-to-bottom for a first-time install. Each section is independently re-runnable. 1. Prerequisites - A Cloudflare account (free plan is fine). - Node ≥ 20 and pnpm ( brew install pnpm or corepack enable ). - wrangler is pulled in as a dev dep; you don't have to install it globally. - For the CLI , curl (built-in on macOS). - For Cloudflare Access , a Cloudflare-managed zone (i.e. you own a domain whose nameservers are pointed at Cloudflare). Clone the repo and install: make help shows every target. 2. Cloudflare resources You need one R2 bucket and one D1 database. They're free under the limits. R2 first-time setup gotcha: R2 needs explicit account-level act","default_branch":null,"files":null,"tree":[],"storefront":"/r/htlin222","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/htlin222/img-hosting/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}