github MarSeventh/CloudFlare-ImgBed v2.7.8
Release v2.7.8 - 2026-10-25

3 hours ago

CloudFlare-ImgBed v2.7.8 🥳

Add Features

  • Added AI Settings for centralized provider, model, image input, structured output, and prompt management. Provider API keys are encrypted with AI_CONFIG_SECRET across Cloudflare and Docker deployments.
  • Added manual AI tag recognition for single and multiple images in File Management, with selectable suggestions, progress, cancellation of further processing, and retries for failed items; stored thumbnails are not required.
  • Split File Management link settings into Format Preference and Content Preference. Raw Link, Markdown, HTML, and BBCode can be selected independently of channel content, with separate Telegram, S3, and WebDAV preferences and new S3 CDN and WebDAV public link options. File Details retains the four format tabs and adds a content selector below the links; TG File IDs use a single raw field.
  • Added search result display preferences in File Management with "Show folders" and "Expand all" modes. Recursive expansion is the default, and the preference is saved; desktop users can focus the search box and hover over the search icon, while mobile users can long-press the icon.
  • Added a default format badge (U / M / H / B) and a hover menu to the upload list's Copy All button. Files can be copied as URL, Markdown, HTML, or BBCode without changing the saved default.
  • Added MIME type and file size badges beside upload filenames, showing the actual size reduction with a down-arrow icon and marking successful WebP conversions with a distinct icon and color.
  • Added an entry loading animation with the configured image hosting name, a gently swaying duck, and a synchronized looping progress bar, followed by page fly-in transitions; internal navigation does not replay the entry animation.
  • Added shimmer skeletons for image, video, and audio previews in File Details, with a gentle reveal when ready. Preview and metadata panels move smoothly together between vertical and side-by-side layouts while the media dialog width stays stable, with reduced-motion support.
  • Added a custom User-Agent setting for S3 channels to support providers that validate the client associated with an access key; uploads and other S3 file operations use the configured value.
  • Added an unsaved-changes indicator to settings save buttons and a manually dismissed security notice when the admin username and password are not configured.
  • Added optional text / secret types for each WORKER_VARS entry in GitHub Actions Worker deployments while preserving the existing format; secrets are excluded from ordinary variable configuration and uploaded as Cloudflare Secrets after deployment succeeds.

Optimization

  • Consolidated File Management, User Management, and System Settings headers into a shared component with consistent theme, language, link format, and logout controls. The header blends into the page at the top and gradually gains a frosted-glass background, border, and shadow while scrolling; text and control sizes remain stable.
  • Refined header gutters and grouped search, filters, and actions into a continuous toolbar. Mobile actions use a single row, buttons are easier to tap, and the focused search box no longer crowds the filter button.
  • Added viewport-aware dialog maximum heights, internal content scrolling, hidden scrollbars, and gradient masks at the content edges while keeping headings and footer buttons visible, including centered and fullscreen dialogs.
  • Adapted File Details to image and video orientation: large screens place portrait media beside a single-column metadata table, while landscape and square media use a vertical layout. Missing dimensions are detected after loading; audio uses a compact player, ordinary files and failed previews use a compact information row, and mobile layouts remain vertical.
  • Refined the File Details toolbar to show Download, Edit, and Delete by default. Additional actions expand leftward from the arrow on hover, stay expanded after a click, and collapse on the next click; mobile actions wrap and respect reduced-motion preferences.
  • Unified corner radii and borders across media, preview containers, and metadata tables. Link settings use left-aligned channel headings and numbered help, with distinct colors for custom prefixes and automatic file IDs; custom prefixes only affect image host links.
  • Refined AI Settings and single/batch tag dialogs with consistent cards, rounded sections, inputs, and actions. Batch tabs use two columns on mobile; common tags appear below current tags, successfully added suggestions disappear, and AI icons and bilingual messages are consistent.
  • Unified Popover, Dropdown, and Select styling across light and dark themes, improved wrapping of long bucket names on mobile, and aligned spacing across admin pages, overview sections, and settings tabs.
  • Smoothed entry text, duck, progress, and fly-in transitions while reducing per-frame layout and painting. The upload title and star background keep moving with reduced-motion support, and locally hosted digital clock fonts fall back without blocking the page.
  • Moved entry animation sources into src/entry/ and build output into dist/entry/, using content-hashed filenames and automatically updated HTML references to avoid stale CDN assets while retaining early loading.
  • Removed the remote telemetry sampling configuration request; the sampling rate now uses the local sampleRate environment variable and defaults to 1 (100%).
  • Centralized frontend and backend MIME utilities across uploads, chunked uploads, WebDAV, file serving, indexing, and AI validation. Added feature-based regression suites and automated GitHub Actions checks, and removed redundant styles and logic after the refactor.

Fix Bugs

  • Fixed WebDAV uploads failing on 3xx redirects and leaving remote files without database or index records, restoring visibility in File Management, file lists, and the random image API. #749
  • Fixed image recognition, filtering, and processing when clients omit a valid MIME type. Uploads infer missing types from file extensions, historical records with missing or generic types use extension inference, and explicit types are preserved. #750
  • Animated GIF, WebP, and APNG uploads now skip WebP conversion, local compression, and Telegram server-side compression to preserve animation.
  • Fixed single-file, batch, and folder copying using inconsistent format or channel preferences; unavailable channel links fall back to the image host link.
  • Fixed File Details retaining its previous scroll position on reopening and portrait images intermittently reverting to a vertical layout after switching browser tabs. Also fixed uneven metadata table corner borders, overflowing dimensions/status tags on narrow screens, and help example colors in dark mode.
  • Fixed file selections being lost when loading more files or additional pages, and corrected file/folder card borders extending beyond the grid on mobile.
  • Fixed a white loading background and delayed image hosting name in dark mode with custom backgrounds by initializing theme and configuration before the app starts. Removed title flicker and unwanted "图床" / ImgHub suffixes from configured site names on login and upload pages.
  • Fixed delayed background blur during page fly-in transitions and dialog opening, and reduced title/font layout shifts and abrupt opacity changes as entry animations finish.
  • Improved dark-mode contrast for tags, AI selections, input suggestions, directory tree selections, date controls, upload link formats, history buttons, and text buttons in Upload Settings and AI Settings, using theme accent colors consistently.
  • Fixed disabled providers leaving their models available and recognition failing to switch to an available image model; recognition turns off when no image model remains. Improved per-item tag saving, index synchronization results, and retry prompts so partial failures are not reported as complete success.
  • Fixed vertical alignment of icons, text, and buttons in AI provider/model headings, tag recognition controls, and the System Settings sidebar.
  • Restored previous/next pagination buttons in User Management on mobile; only File Management hides them. Fixed content being covered by the admin header and inconsistent mobile spacing.
  • Fixed File Management retaining its scroll position when opened from System Settings, unified scrolling on admin page/settings tab changes, and removed the sidebar resize listener on unmount.

Documentation

  • Added bilingual AI feature and settings guides, updated Worker deployment and WORKER_VARS instructions, and linked AI secret setup directly to the variable format guide.
  • Expanded contribution guides and frontend/backend testing documentation, and updated the documentation homepage with AI capabilities.

Add Features

  • 新增智能设置,统一管理 AI 供应商、模型、图片输入能力、结构化输出和 Prompt;供应商 API Key 通过 AI_CONFIG_SECRET 加密保存,支持 Cloudflare 与 Docker 部署。
  • 文件管理新增单张及批量图片 AI 标签识别,支持选择建议标签后追加保存、查看进度、取消后续处理和重试失败项,无需保存缩略图。
  • 文件管理链接设置拆分为“格式偏好”和“内容偏好”,原始链接、Markdown、HTML、BBCode 与渠道内容独立选择;Telegram、S3、WebDAV 可分别设置,新增 S3 CDN 链接与 WebDAV 公开链接。文件详情保留四种格式标签页,可在链接下方临时切换内容,TG File ID 仅显示一个原始字段。
  • 文件管理新增搜索结果展示偏好,可选择“展示文件夹”或“全部展开”,默认递归展开并记住选择;桌面端聚焦搜索框后悬停搜索图标打开设置,移动端长按图标打开设置。
  • 上传列表整体复制按钮新增默认格式角标(U / M / H / B)及悬停菜单,支持按 URL、Markdown、HTML 或 BBCode 整体复制,临时选择不会改变默认格式。
  • 上传列表文件名旁新增 MIME 类型与文件大小标签,通过下箭头展示实际减小比例,并用独立图标和配色标识成功的 WebP 转换。
  • 新增网站进入加载动画,展示自定义图床名称、轻摇的鸭子和同步循环进度条,页面就绪后以飞入动画过渡;站内跳转不重复播放进入动画。
  • 文件详情的图片、视频和音频预览新增骨架屏扫光,加载完成后柔和显现;预览和信息表格在上下、左右布局切换时同步平滑过渡,保持媒体弹窗宽度稳定,并适配减少动态效果设置。
  • S3 渠道新增自定义 User-Agent 配置,适配校验密钥绑定客户端的服务商,上传及其他 S3 文件操作统一使用该配置。
  • 设置保存按钮新增未保存修改提示;未配置管理员用户名和密码时显示需手动关闭的安全提示。
  • GitHub Actions 的 Worker 部署支持为 WORKER_VARS 每项指定可选的 text / secret 类型,兼容原有写法;secret 不写入普通变量配置,在部署成功后统一上传为 Cloudflare Secret。

Optimization

  • 将文件管理、用户管理和系统设置顶栏整合为共用组件,统一主题、语言、链接格式和退出操作;顶栏在顶部融入页面,下滑时逐渐显现毛玻璃背景、边框与阴影,文字和控件尺寸保持稳定。
  • 优化顶栏左右留白,将搜索、筛选和操作整合为连续工具区;移动端操作按钮采用单行布局,增大点击区域,并避免搜索框聚焦后挤压筛选按钮。
  • 弹窗统一增加适配屏幕的最大高度,超出时内容区内部滚动并隐藏滚动条,标题和底部按钮保持可见;内容边缘增加渐变遮罩,兼容居中与全屏弹窗。
  • 文件详情按图片和视频方向自适应布局:大屏竖向媒体与单列信息表格左右排列,横向和方形媒体上下排列;缺少尺寸时在加载后判断。音频使用紧凑播放器,普通文件及预览失败内容使用紧凑信息条,移动端统一上下排列。
  • 文件详情操作栏默认展示下载、编辑和删除;更多操作从箭头处向左展开,悬停临时展开、点击保持展开、再次点击收起,移动端自动换行并适配减少动态效果设置。
  • 统一媒体、预览容器和信息表格的圆角及边框;链接设置各渠道标题左对齐,问号提示分点换行,自定义链接示例区分手填前缀与自动文件 ID,并明确自定义前缀只作用于图床链接。
  • 美化智能设置与单文件、批量标签弹窗,统一卡片、圆角分区、输入框和操作按钮,批量页签在手机上采用双列布局;常用标签合并到当前标签下方,成功添加的 AI 建议自动移除,并统一 AI 图标和中英文提示。
  • 统一 Popover、Dropdown 和 Select 浮层的深浅色样式,优化移动端长桶名称换行,统一管理页面、概览区域与各设置页签的上下间距。
  • 优化加载文字、鸭子、进度条及飞入动画衔接,减少逐帧布局与重绘;上传标题和星空背景保持持续流动并适配减少动态效果,本地数字时钟字体在加载失败时回退,不阻塞页面。
  • 加载动画源码纳入 src/entry/,构建输出至 dist/entry/,使用内容哈希文件名并自动更新 HTML 引用,避免旧 CDN 缓存,同时保持独立提前加载。
  • 移除遥测采样率的远程配置请求,改用本地 sampleRate 环境变量,默认采样率为 1(100%)。
  • 统一前后端 MIME 类型工具,复用上传、分片上传、WebDAV、文件访问、索引和 AI 校验中的类型判断;新增按功能组织的回归测试与 GitHub Actions 自动检查,并清理重构后重复的样式和逻辑。

Fix Bugs

  • 修复 WebDAV 遇到 3xx 重定向时上传失败、远端文件已写入但数据库和索引缺少记录的问题,恢复文件管理、列表及随机图 API 中的正常展示。#749
  • 修复客户端未提供有效 MIME 类型时图片识别、筛选和处理异常的问题;上传按后缀补全类型,历史记录缺失或使用通用类型时也支持后缀识别,并保留已有明确类型。#750
  • GIF、WebP 和 APNG 动图上传自动跳过 WebP 转换、本地压缩及 Telegram 服务端压缩,保留动画。
  • 修复单文件、批量和文件夹复制的格式及渠道偏好不一致的问题;所选渠道链接不可用时回退到图床链接。
  • 修复重开文件详情时滚动位置未复位,以及切换浏览器标签页后重开竖图偶发变为上下布局的问题;同时修复表格圆角边框粗细不一、窄屏尺寸和状态标签溢出、深色模式帮助示例颜色异常。
  • 修复加载更多及跨页加载后文件多选丢失,以及移动端文件和文件夹卡片边框超出网格的问题。
  • 修复自定义背景下深色加载画面先显示白底、图床名称延迟出现的问题,在应用启动前初始化主题和配置;修复登录页标题闪烁,并移除登录和上传页面自定义名称后多余的“图床”或 ImgHub 后缀。
  • 修复页面飞入及弹窗打开时背景模糊延迟出现的问题,减少标题和字体加载引起的位置跳动,以及进入动画结束时突兀的透明度变化。
  • 改善深色模式下标签、AI 选中项、输入建议、目录树选中项、日期控件、上传链接格式、历史按钮及上传和智能设置文字按钮的可读性,统一复用主题强调色。
  • 修复供应商停用后模型仍可用、识别未切换到可用图片模型的问题,无可用图片模型时自动关闭识别;完善标签保存、索引同步的逐项结果及重试提示,避免部分失败被误报为全部成功。
  • 修复 AI 供应商和模型标题、标签识别工具栏、系统设置侧栏中图标、文字和按钮的垂直对齐问题。
  • 恢复移动端用户管理的上一页、下一页按钮,仅文件管理隐藏这两个按钮;修复管理端内容被顶栏遮挡及移动端间距不协调的问题。
  • 修复从系统设置进入文件管理时保留旧滚动位置的问题,统一管理页面及设置页签切换的滚动行为,并在侧栏卸载时清理窗口尺寸监听。

Documentation

  • 新增中英文 AI 功能与智能设置指南,完善 Worker 部署及 WORKER_VARS 说明,AI 密钥配置指引直接链接到变量格式章节。
  • 完善贡献指南和前后端测试文档,并在文档首页补充 AI 能力介绍。

Full Changelog: v2.7.7...v2.7.8

Don't miss a new CloudFlare-ImgBed release

NewReleases is sending notifications on new releases.