Skip to content

Latest commit

 

History

7 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LocalFlow 流影

LocalFlow 是一个面向 Windows 的轻量本地媒体信息流浏览器。启动后选择目录和“信息流起始层级”,它会打开一个仅供本机访问的现代网页,用文件夹卡片、图片信息流和原生视频播放器浏览本地内容。

当前功能

  • 启动时通过 Windows 原生目录选择器选择媒体根目录。
  • 可设置第 1~30 层为信息流起始层级。
  • 实际目录不足设置层数时,自动在最后一级提前进入信息流。
  • 每个文件夹对应一个可前进、后退的独立页面。
  • 信息流中的子文件夹继续显示为可点击入口。
  • 图片和视频共用信息流,只有当前项前后各 10 项挂载真实媒体元素。
  • 图片点击后在当前页面进入大图模式,支持按钮、方向键和触屏滑动切换。
  • 视频使用浏览器原生播放器和 HTTP Range 分段读取。
  • 同一时间只播放一个视频,离开加载窗口后播放器自动卸载。
  • 深色、浅色主题切换,默认记住用户选择。
  • 当前文件夹搜索、自然文件名排序、面包屑导航和滚动位置恢复。
  • 信息流与瀑布流一键切换,两种布局都保持前后各 10 项媒体加载窗口。
  • 图片大图模式支持按钮、滚轮和双击缩放,放大后可拖动查看。
  • 界面内置 HarmonyOS Sans SC Regular/Bold,不需要系统预装字体。
  • 只监听 127.0.0.1,不会向局域网公开媒体。
  • 不递归扫描整个媒体库,只在打开文件夹时读取当前层。

层级规则

所选根目录计为第 1 层,程序入口页不计入层数。

例如设置第 3 层开始信息流:

78                       第 1 层:目录导航
├─ 第一部分              第 2 层:目录导航
│  ├─ 具体目录 A         第 3 层:媒体信息流
│  └─ 具体目录 B         第 3 层:媒体信息流
└─ 第二部分

进入信息流后,如果还有子文件夹,页面会同时显示子文件夹入口和本层媒体。继续进入更深文件夹时沿用信息流模式。

在线构建

项目不要求在本地安装 Rust、Node.js 或前端开发环境。推送到 GitHub 后,Build Windows 工作流会:

  1. 在线构建 Preact + TypeScript 界面;
  2. 将网页资源嵌入 Rust 程序;
  3. 使用 Windows 云端环境编译 LocalFlow.exe
  4. 生成 LocalFlow-win-x64.zip 构建产物。

在仓库的 Actions → Build Windows → 最新运行 → Artifacts 中即可下载。

使用方法

  1. 下载并解压 LocalFlow-win-x64.zip
  2. 双击 LocalFlow.exe,程序会自动打开默认浏览器。
  3. 点击“选择目录”,选择媒体根目录。
  4. 设置“信息流起始层级”,点击“打开 LocalFlow”。
  5. 使用网页右上角的退出按钮关闭本地服务。

媒体兼容性

图片优先支持 JPG、PNG、GIF、WebP、AVIF、BMP 和 SVG。视频优先支持 MP4、WebM、MOV 等浏览器可直接解码的格式。

MKV、AVI、WMV 或特殊编码能否播放取决于浏览器。LocalFlow 不会在后台自动转码,以免突然占用大量 CPU。FFmpeg 按需兼容代理将作为可选功能加入,不会成为基本浏览的强制依赖。

技术结构

  • 核心程序:Rust
  • 本地服务:Axum
  • 网页界面:Preact + TypeScript
  • 媒体加载:自定义轻量窗口,当前项前后各 10 项
  • 媒体传输:Tokio 异步读取及 HTTP Range
  • 网页资源:编译时嵌入 Windows 可执行文件

字体许可

LocalFlow 使用 Huawei Device Co., Ltd. 的 HarmonyOS Sans Fonts。字体以未修改形式嵌入软件,完整许可随字体文件保存在 frontend/public/fonts/LICENSE_Fonts。字体本身不按本项目的 MIT License 授权。

安全边界

  • 服务只绑定本机回环地址。
  • API 只允许访问所选根目录之内的规范化路径。
  • 目录符号链接和重解析入口不会进入媒体索引。
  • LocalFlow 首版只浏览文件,不提供删除、移动或重命名功能。

About

轻量、现代化的 Windows 本地图片与视频信息流浏览器

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages