CattoPic 是一个基于 Cloudflare 技术栈打造的开源图床服务,专为开发者与独立站用户设计,支持图片上传、自动格式转换(WebP/AVIF)、标签归类和公开的随机图片 API。前端采用 Next.js 构建,后端以 Cloudflare Workers 和 Hono 实现无服务器部署,具备快速、稳定、高可用的特性。

CattoPic 支持 JPEG、PNG、GIF、WebP、AVIF 等主流图片格式,并在上传后自动生成更优传输效率的 WebP 和 AVIF 版本,有效降低带宽占用。
通过标签系统,用户可以对图片进行分类管理,并支持批量添加、编辑与删除操作,提升资源调取与组织效率。
CattoPic 提供公开的随机图片 API,支持按标签等条件筛选,适合嵌入展示图、社交媒体、博客封面等场景。
| 组件 | 技术 | 功能 |
|---|---|---|
| 前端 | Next.js 16, React 19, Tailwind CSS | 上传、管理界面,深色模式支持 |
| API | Cloudflare Workers + Hono | 路由、权限验证、REST API |
| 存储 | Cloudflare R2 | 存储原图及转换后的 WebP/AVIF 版本 |
| 数据库 | Cloudflare D1(SQLite) | 存储元信息、标签、API 密钥 |
| 缓存 | Cloudflare KV | 响应缓存,提高性能 |
| 队列 | Cloudflare Queues | 异步批量处理和删除任务 |
| 处理器 | Cloudflare Images | 图片实时转换与压缩优化 |
| 定时器 | Cron Triggers | 自动清理过期资源 |