功能特性 界面预览 开发计划 安装使用 GitHub
🤖 完全由 AI 开发 · 专为飞牛 fnOS 设计

FlyPic 飞图
轻量、快速、稳定的图像素材检索浏览应用

支持 数十万 级别图片流畅浏览。非侵入式设计, 不修改原文件结构。100% 开源免费

数十万 图片支持
60+ 文件格式
实时 文件监控
FN Connect 远程访问
FlyPic 主界面

轻量快速

基于 SQLite 本地数据库,毫秒级响应。react-window 虚拟滚动 + 浏览器原生懒加载,流畅浏览海量图片。

非侵入式

只在素材库目录创建 .flypic 文件夹存储索引和缩略图,不修改任何原始文件,删除应用后数据完全可控。

稳定可靠

优雅的资源管理,数据库连接池自动释放,WAL 模式确保数据安全,不影响正常文件操作。

实时同步

基于 Worker Thread 的文件监控,自动检测新增、删除、修改,实时更新索引,无需手动刷新。

功能特性

专注于图片浏览检索,提供流畅高效的使用体验

Google Photos 风格瀑布流

固定高度、宽度自适应的瀑布流布局,视觉整齐美观。支持缩略图大小调节(150-300px),适应不同浏览需求。

  • react-window 虚拟滚动,轻松浏览数十万图片
  • 浏览器原生 loading="lazy" 懒加载
  • 智能分批加载,按需请求数据

智能搜索

多关键词组合搜索,空格分隔即可实现 AND 逻辑。实时搜索 + 防抖优化,输入即搜,快速定位。

高级筛选

按格式(JPG/PNG/WebP...)、文件大小、横竖图方向筛选。智能分析当前文件夹内容,动态生成筛选选项。

文件夹树浏览

层级文件夹结构展示,支持文件夹搜索(多关键词)、全部展开/折叠。显示每个文件夹的图片数量。

多选批量操作

Ctrl 点击切换选中,Shift 点击范围选择。支持批量复制到剪贴板、批量导出为 ZIP 压缩包。

图片详情面板

右侧面板显示选中图片的详细信息:尺寸、大小、格式、创建/修改时间、完整路径。渐进式加载,先显示缩略图再加载原图。

实时文件监控

基于 chokidar + Worker Thread 的文件监控,自动检测文件变化。智能防抖合并事件,高效更新索引。

扫描控制

首次添加素材库自动全量扫描,支持暂停/继续。显示扫描进度和预估剩余时间,大量图片也能从容处理。

支持的文件格式

完整支持主流图片格式,其他媒体文件可识别并通过默认应用打开

完整支持的图片格式

支持预览、缩略图生成、搜索筛选等全部功能

JPGJPEG
PNGPNG
WebPWebP
GIF动图
BMP位图
TIFFTIFF
SVG矢量图
其他可识别格式 可在列表中显示,双击通过系统默认应用打开
视频 MP4 / WebM / MOV / AVI / MKV / FLV / WMV
音频 MP3 / WAV / FLAC / AAC / M4A / OGG / WMA
文档 PDF / TXT / MD / DOC / DOCX / XLS / XLSX / PPT
设计 PSD / AI / Sketch / XD / Figma / EPS

界面预览

现代化设计,支持亮色/暗色主题切换

自动切换中
亮色主题界面
暗色主题界面

📱 移动端适配

响应式设计,手机上也能流畅使用

文件夹目录
文件夹目录
图片浏览
图片浏览
图片详情
图片详情

开发计划

持续优化,专注核心体验

已完成

核心功能

  • 素材库管理(添加/删除/切换)
  • 固定行高瀑布流浏览
  • 多关键词智能搜索
  • 高级筛选(格式/大小/方向)
  • 文件夹树浏览
  • 实时文件监控
  • 多选批量操作
  • 亮色/暗色主题
  • 移动端适配
当前阶段

优化与维护

  • 性能优化,提升大量图片浏览体验
  • Bug 修复与稳定性提升
  • 用户反馈响应
考虑中

可能的功能

  • 基础文件操作(删除、重命名、移动)
  • NAS 登录与远程访问
  • 多用户共享

* 以上功能不一定会实现,取决于实际需求和开发资源

技术栈

现代化技术选型,确保性能与稳定性

前端

React 18 Vite 5 TailwindCSS Zustand react-window react-photo-view Socket.IO Client JSZip Lucide Icons

后端

Node.js Express better-sqlite3 Sharp Socket.IO chokidar glob p-limit

安装使用

通过飞牛应用中心一键安装

1

打开飞牛应用中心

在飞牛 fnOS 系统中打开应用中心

2

搜索 FlyPic

在应用中心搜索 "FlyPic" 或 "图片浏览"

3

点击安装

点击安装按钮,等待安装完成

4

添加素材库

打开应用,添加您的图片文件夹作为素材库

安装提示

  • 自定义端口:安装时可自定义应用端口(默认 15002),避免与其他应用冲突
  • 素材库路径:添加素材库时需输入飞牛文件系统的完整路径,如 /vol1/1000/图片库
  • 文件夹权限:请确保应用对素材库文件夹有读取权限,可在飞牛应用设置中配置授权目录

使用说明

简单几步,轻松管理您的素材库

添加素材库

点击左侧素材库下拉框,选择"添加新素材库",输入名称和飞牛文件路径(如 /vol1/1000/图片)

浏览图片

点击左侧文件夹树选择文件夹,或点击"全部图片"查看所有图片

搜索图片

在顶部搜索框输入关键词,多个关键词用空格分隔实现 AND 搜索

筛选图片

点击搜索框旁的筛选按钮,按格式、大小、方向筛选

多选操作

Ctrl+点击 切换选中,Shift+点击 范围选择,支持批量导出

导出图片

选中图片后,在右侧面板点击"复制"或"导出"为 ZIP

调整缩略图

拖动顶部滑块调整缩略图大小(150-300px)

切换主题

点击右上角太阳/月亮图标切换亮色/暗色主题

数据存储结构

非侵入式设计,数据完全可控

📁 素材库目录
🖼️ 您的图片文件...
📁 .flypic/ ← FlyPic 数据目录
📁 thumbnails/ WebP 缩略图
🗄️ metadata.db SQLite 数据库

安全无侵入

只在素材库目录创建 .flypic 隐藏文件夹,不修改任何原始文件

一键清除

删除 .flypic 文件夹即可完全清除索引数据,不留任何痕迹

高效存储

WebP 格式缩略图 + SQLite 数据库,占用空间小,查询速度快