Free-Fs — 开源文件管理系统

📖 项目简介

✨Free-Fs 开源文件管理系统:基于 SpringBoot3.x + MyBatis Flex + MySQL + Sa-Token + Layui 等搭配阿里云OSS、Minio、七牛云等各种云存储实现的云存储管理系统。

包含文件上传、删除、在线预览、云资源列表查询、下载、文件移动、重命名、目录管理、登录、注册、以及权限控制等功能。

源码链接:

SpringBoot3.x版本

SpringBoot2.x jdk1.8 版本后续不再维护,如需使用请切换至jdk1.8分支

  • 切换至springboot3分支即可

    Vue3版本正在开发中……(敬请期待)

在线文档: 前往在线文档

体验地址: https://fs.elites.chat

内置账号

账号 密码
admin admin
fs fs

📚 项目技术栈

后端:

  • 核心框架:Spring Boot 3.3.0
  • ORM: MyBatis Flex 1.9.3
  • 数据库:MySQL 8.0+
  • 权限安全控制:Sa-Token 1.38.0
  • 核心框架:Spring Boot 2.6.6
  • orm: MyBatis Plus
  • 数据库:MySQL 8.0
  • 权限安全控制:Sa-Token
  • 本地缓存:Ehcache
  • 存储平台支持:本地存储、Qiniu云、阿里云Oss、Minio、腾讯云Cos、AWS S3
  • 文件上传:本地、七牛云、阿里云OSS
  • 第三方登录:JustAuth
  • 模板渲染:Thymeleaf

前端:

  • Layui v2.5.5
  • Jquery
  • Ajax

文件在线预览解决方案:

🛶 系统设计

💻 项目开发环境

  • 操作系统:Windows 11、MacOS
  • 操作系统:Windows 11、macOS
  • 构建工具:Maven 3.8.1
  • 开发工具:Intellij IDEA
  • 应用服务器:Undertow
  • 接口测试工具:Postman
  • 压力测试工具:Apache JMeter
  • 版本控制工具:Github、Gitee
  • Java 版本:17+
  • Java 版本:8+
  • idea开发插件: lombok

📁 项目模块结构说明

📁 项目结构

  - fs-admin              web管理模块,主要包括对外的api和web配置
  - fs-common             公共模块,包括自定义注解,全局异常处理,公共对象,ORM配置,存储平台sdk的封装,工具类等
  - fs-core               核心模块,包括业务逻辑处理,数据库操作,存储操作等
  - sql                   项目SQL脚本文件

👀 界面预览

登录页: 输入图片说明 注册页: 输入图片说明 主页: 输入图片说明 资源操作: 输入图片说明 目录管理: 输入图片说明 重命名: 输入图片说明 添加文件夹: 输入图片说明 移动文件或目录: 输入图片说明 删除文件: 输入图片说明

🔗 友情链接

  • EleAdmin 通用型后台管理模板,界面美观、开箱即用拥有丰富的扩展组件和模板页面,适合各类中后台应用。
  • Echo 一套前后端不分离的开源社区系统。

参考资料

https://github.com/owncloud/core/blob/master/README.md