Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

canwdev/file-lite

Repository files navigation

File Lite

中文 | English

Web 文件管理器 · Vue 3 + TypeScript

screenshot


双后端

项目提供 两种服务端实现,共享同一套前端,可按部署场景选择其一:

Node.js 后端 (backend/) Go 后端 (backend-go/)
技术 Express.js + TypeScript,使用 Bun 开发与打包 Echo,单文件可执行程序
典型用途 npm i -g file-lite 全局安装、快速迭代与插件式扩展 资源占用低、容器 / 边缘设备单二进制分发
文档 见下文「开发」与配置说明 backend-go/README.md

前端构建:Go 镜像需先执行 frontend:build-go,将静态资源输出到 backend-go/frontend/(详见 Go 后端 README)。

  • 打包体积:单包不超过约 20MB
  • 功能
    • 文件与目录:创建、删除、重命名、移动、复制
    • 传输:批量上传、上传文件夹、下载、将文件夹打包为 ZIP 下载
    • 文本编辑器
    • 预览:图片、视频、音频;音乐播放器(播放列表、封面、歌词展示)
    • 视频:ArtPlayer.js原生 <video> 在菜单中一键切换(偏好持久化)
    • Endless Gallery:类短视频流的纵向滑动浏览,聚合当前目录下支持的图片 / 视频 / 音频,触屏与键鼠操作
    • 资源管理器:路径级布局与排序状态持久化、按扩展名设置默认打开方式等
  • 安全
    • 密码登录后签发 JWT 会话令牌
    • 控制台链接使用短时 ticket 登录参数,有效期 2 分钟;重新打印链接会生成新的 ticket
    • 支持"记住登录状态":持久 Cookie 或浏览器会话 Cookie
    • 密码错误超次数可封禁 IP
    • 可限制允许访问的根路径范围
    • 支持 HTTPS(含自签名证书)
    • 访问频率限制

安装

# 全局安装(Windows 需要管理员权限)
npm i -g file-lite
# 运行
file-lite
# 卸载
npm uninstall -g file-lite

开发

使用 Bun 安装依赖与执行脚本;默认产物面向 Node.js 运行时(由 backend 打包并嵌入前端)。

# Node.js 后端
cd backend
bun i
bun run dev
bun run build
# 前端
cd frontend
bun i
bun run frontend:dev
bun run frontend:build
# 一键构建(后端嵌入前端)
cd backend
bun run build:auto
cd dist
node file-lite.min.mjs

配置文件

  • 配置文件路径:${cwd}/data/config.json
  • 配置类型说明:IConfig
  • 环境变量示例:.env.development
  • 使用 mkcert 生成并信任自签名证书
  • password 为空时会自动生成随机密码;如果配置文件已存在,会写回到配置文件中
  • jwtToken 是 JWT 签名密钥;如果配置文件已存在但为空,会自动生成并写回
  • 控制台不会打印 JWT 或签名密钥;请通过配置文件查看登录密码

About

Web 文件管理器 | Web file manager powered by Node.js

Resources

License

Stars

Watchers

Forks

Packages

Contributors

AltStyle によって変換されたページ (->オリジナル) /