ImageRail 是一个轻量的图片版本管理桌面工具,用来把同一创作方向下的图片按轨道整理、命名、备注和对比。
请在 GitHub Releases 页面下载已打包版本:
https://github.com/Star-Fish-C/Image-rail/releases
下载 ImageRail.exe 后直接运行即可。
普通用户不需要安装 Node.js、Rust 或 Tauri。
当前版本是 Tauri 版 MVP,重点保留图片轨道管理的核心流程。
- 创建和打开 ImageRail 项目
- 在项目里创建多条图片轨道
- 将本地图片或网页图片拖入轨道
- 自动复制图片到对应轨道文件夹
- 自动命名图片,例如
A_1.png、A_2.png - 显示缩略图、文件名、版本号、备注和状态
- 支持状态标签:可用、待定、废弃、最终候选
- 点击图片后在右侧查看大图
- 支持固定一张图片,与另一张图片上下对比
- 支持鼠标滚轮缩放、左键拖动画布查看细节
- 支持重命名项目显示名、轨道文件夹和同轨道图片名前缀
- 删除图片时会删除应用记录和本地图片文件
- 删除轨道时会删除应用记录和本地轨道文件夹
创建项目时,选择一个保存位置后,ImageRail 会先在该位置内创建一个项目文件夹,再在项目文件夹内创建轨道文件夹。
示例:
你选择的文件夹/
└─ ImageRail_Project/
├─ track_A/
│ ├─ A_1.png
│ └─ A_2.png
└─ track_B/
└─ B_1.png
项目列表和项目数据保存在应用目录下的 project-data 文件夹中,不直接放进你选择的项目文件夹。
本项目使用:
- Tauri
- HTML
- CSS
- JavaScript
前端回归测试仅需要 Node.js 18 或更新版本:
npm test启动与打包:
npm ci
npm start
npm run dist桌面构建需要 Rust 1.91 或更新版本、Tauri 系统依赖;Windows 还需 Visual Studio C++ Build Tools、WebView2,以及 PATH 中的 CMake、NASM、Perl(用于静态编译 AVIF 解码器)。已验证 CMake 3.31.6、NASM 2.16.03 和 Git for Windows 附带的 Perl。
cargo test --manifest-path src-tauri/Cargo.toml- 卡片按需显示最长边 512 像素的缓存缩略图;查看和对比仍使用原图。GIF 卡片显示首帧。
- 缩略图缓存在系统应用缓存目录的
thumbnails中,可删除并自动重建,不写入图片项目目录。缓存软上限 512 MB,使用期间最多每 30 秒后台清理一次,保留正在使用的文件。 - 缩略图输入上限为 100 MB、单边 8192 像素;普通解码器设置 512 MB 分配预算,AVIF 在 libaom 内限制帧尺寸。超过限制或格式损坏时显示重试按钮,原文件与项目记录保留。
- 批量导入显示进度并暂停编辑;取消会等待当前图片结束,保留已导入图片。网页下载总超时为 120 秒。
- 保存失败会保留编辑,关闭、项目切换和导入会等待保存成功。
优化实现、性能数据、测试范围与 PR #1 的整合说明见 性能验证记录。
- Star-Fish-C