From 05b335467dc2bfcaacfc90cb1e6fe84407a4f304 Mon Sep 17 00:00:00 2001 From: MarSeventh <1193267292@qq.com> Date: Wed, 9 Jul 2025 19:39:16 +0800 Subject: [PATCH] update readme --- README.md | 46 +++++++++++------------------- README_en.md | 32 ++++++--------------- static/readme/cloudflare-logo.png | Bin 0 -> 22978 bytes 3 files changed, 24 insertions(+), 54 deletions(-) create mode 100644 static/readme/cloudflare-logo.png diff --git a/README.md b/README.md index 429733c..848c1fc 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@
logo -

🗂️开源文件托管解决方案,基于 Cloudflare Pages,支持 Telegram Bot 、 Cloudflare R2 、S3 等多种存储渠道

+

🗂️开源文件托管解决方案,支持 Docker 和无服务器部署,支持 Telegram Bot 、 Cloudflare R2 、S3 等多种存储渠道

简体中文 | English | 官方网站

@@ -32,6 +32,7 @@ + --- > [!IMPORTANT] @@ -79,19 +80,19 @@ -# 1.Introduction +# 1. Introduction 免费文件托管解决方案,具有**上传**、**管理**、**读取**、**删除**等全链路功能,覆盖文件全生命周期,支持**鉴权**、**目录**、**图片审查**、**随机图**等各项特性(详见[功能文档](https://cfbed.sanyue.de/guide/features.html))。 ![CloudFlare](static/readme/海报.png) -# 2.[Document](https://cfbed.sanyue.de) +# 2. [Document](https://cfbed.sanyue.de) 提供详细的部署文档、功能文档、开发计划、更新日志、常见问题解答等,帮助您快速上手。 [![更新日志](https://recent-update.cfbed.sanyue.de/cn)](https://cfbed.sanyue.de/guide/update-log.html) -# 3.Demo +# 3. Demo **演示站点**:[CloudFlare ImgBed](https://cfbed.1314883.xyz/) 访问密码:`cfbed` @@ -113,7 +114,7 @@ -# 4.Tips +# 4. Tips - **前端开源**:参见[MarSeventh/Sanyue-ImgHub](https://github.com/MarSeventh/Sanyue-ImgHub)项目。 @@ -131,35 +132,20 @@ [![Contributors](https://contrib.rocks/image?repo=Marseventh/Cloudflare-ImgBed)](https://github.com/MarSeventh/CloudFlare-ImgBed/graphs/contributors) -# 5.Star History +# 5. Star History **如果觉得项目不错希望您能给个免费的star✨✨✨,非常感谢!** [![Star History Chart](https://api.star-history.com/svg?repos=MarSeventh/CloudFlare-ImgBed,MarSeventh/Sanyue-ImgHub&type=Date)](https://star-history.com/#MarSeventh/CloudFlare-ImgBed&MarSeventh/Sanyue-ImgHub&Date) -# 6.Special Sponsors +# 6. Special Sponsors + +- **[CloudFlare](https://www.cloudflare.com) & [EdgeOne](https://edgeone.ai/?from=github)**:提供CDN加速和安全保护服务 + + Tencent LogoTencent Logo + +- **[亚洲云](https://www.asiayun.com) & [双翼鸟数据](https://www.synidc.cn) & [DartNode](https://dartnode.com)**:提供云计算服务资源支持 + + [![Powered by DartNode](https://dartnode.com/branding/DN-Open-Source-sm.png)](https://dartnode.com "Powered by DartNode - Free VPS for Open Source") - - - - - - - - - - - - - - - - - - - - - -
CloudFlare提供CDN加速和安全保护服务,提供项目底层架构支持
亚洲云提供云计算服务资源支持(高防服务器|香港服务器|美国服务器|海外服务器)
双翼鸟数据提供云计算服务资源支持
Tencent Logo提供CDN加速和安全保护服务
DartNode提供云计算服务资源支持
-[![Powered by DartNode](https://dartnode.com/branding/DN-Open-Source-sm.png)](https://dartnode.com "Powered by DartNode - Free VPS for Open Source") diff --git a/README_en.md b/README_en.md index b67cd11..9203cbf 100644 --- a/README_en.md +++ b/README_en.md @@ -1,6 +1,6 @@
logo -

🗂️Open-source file hosting solution based on Cloudflare Pages, supporting multiple storage channels such as Telegram Bot, Cloudflare R2, S3, etc.

+

🗂️Open-source file hosting solution, supporting Docker and serverless deployment, supporting multiple storage channels such as Telegram Bot, Cloudflare R2, S3, etc.

简体中文 | English | Official Website @@ -30,6 +30,7 @@

+ --- > [!IMPORTANT] @@ -125,27 +126,10 @@ Provides detailed deployment documentation, feature docs, development plans, upd # 6. Special Sponsors - - - - - - - - - - - - - - - - - - - - - -
CloudFlareProvides CDN acceleration, security protection, and underlying architecture support
AsiaYunProvides cloud computing resources support (high defense servers | Hong Kong servers | US servers | Overseas servers)
ShuangyiNiao DataProvides cloud computing resources support
Tencent LogoProvides CDN acceleration and security protection
DartNodeProvides cloud computing resources support
+- **[CloudFlare](https://www.cloudflare.com) & [EdgeOne](https://edgeone.ai/?from=github)**:Provides CDN acceleration, and security protection -[![Powered by DartNode](https://dartnode.com/branding/DN-Open-Source-sm.png)](https://dartnode.com "Powered by DartNode - Free VPS for Open Source") + Tencent LogoTencent Logo + +- **[AsiaYun](https://www.asiayun.com) & [ShuangyiNiao Data](https://www.synidc.cn) & [DartNode](https://dartnode.com)**:Provides cloud computing resources support + + [![Powered by DartNode](https://dartnode.com/branding/DN-Open-Source-sm.png)](https://dartnode.com "Powered by DartNode - Free VPS for Open Source") diff --git a/static/readme/cloudflare-logo.png b/static/readme/cloudflare-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..81e9efe68486d7ca0805c2e0342a446e8616e4da GIT binary patch literal 22978 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 literal 0 HcmV?d00001