Skip to content

Latest commit

 

History

History
286 lines (240 loc) · 7.76 KB

readme.md

File metadata and controls

286 lines (240 loc) · 7.76 KB

FileCodeBox - 文件快递柜

FileCodeBox Logo

匿名口令分享文本和文件,像拿快递一样取文件

GitHub stars GitHub forks GitHub issues GitHub license QQ Group Python Version FastAPI Vue Version

English | 部署教程 | 常见问题

📝 项目简介

FileCodeBox 是一个基于 FastAPI + Vue3 开发的轻量级文件分享工具。它允许用户通过简单的方式分享文本和文件,接收者只需要一个提取码就可以取得文件,就像从快递柜取出快递一样简单。

🖼️ 功能预览

前端仓库     演示站点

新版界面

文件上传 文本分享
文件管理 系统设置
移动端 深色模式
国际化 响应式

经典界面

首页 上传
管理 设置
分享 下载

🎯 应用场景

📁 临时文件分享

快速分享单个文件,无需注册登录

📝 文本快速分享

分享代码片段、文本内容等

🕶️ 匿名文件传输

保护隐私的文件传输方式

💾 临时文件存储

支持设置过期时间的文件存储

🔄 跨平台传输

在不同设备间快速传输文件

🌐 小型分享服务

搭建私有的文件分享服务

✨ 核心特性

🚀 轻量简洁

基于 FastAPI + SQLite3 + Vue3 + ElementUI,部署简单,性能出色

📤 便捷上传

支持复制粘贴、拖拽上传,操作简单直观

📦 多种类型

支持文本和各类文件的分享

🔒 安全机制

  • IP 限制上传次数
  • 错误次数限制
  • 文件过期机制

🎫 提取码分享

随机提取码,可自定义次数及有效期

🌍 多语言支持

支持中文简体、繁体及英文

🎭 匿名分享

无需注册登录,保护隐私

🛠 管理面板

文件管理和系统配置

🐳 容器部署

支持 Docker 一键部署

💾 存储扩展

支持本地存储、S3 协议、OneDrive 等

📱 响应式设计

支持移动端访问

💻 终端支持

支持命令行下载

🚀 快速开始

Docker 部署

docker run -d --restart=always -p 12345:12345 -v /opt/FileCodeBox/:/app/data --name filecodebox lanol/filecodebox:beta

手动部署

  1. 克隆项目
git clone https://github.com/vastsa/FileCodeBox.git
  1. 安装依赖
cd FileCodeBox
pip install -r requirements.txt
  1. 启动服务
python main.py

📖 使用说明

分享文件

  1. 打开网页,点击"分享文件"
  2. 选择或拖拽文件
  3. 设置过期时间和次数
  4. 获取提取码

获取文件

  1. 打开网页,输入提取码
  2. 点击获取
  3. 下载文件或查看文本

管理面板

  1. 访问 /admin
  2. 输入管理员密码
  3. 管理文件和配置

🛠 开发指南

项目结构

FileCodeBox/
├── apps/           # 应用代码
│   ├── admin/     # 管理后台
│   └── base/      # 基础功能
├── core/          # 核心功能
├── data/          # 数据目录
└── fcb-fronted/   # 前端代码

开发环境

  • Python 3.8+
  • Node.js 14+
  • Vue 3
  • FastAPI

本地开发

  1. 后端开发
python main.py
  1. 前端开发
cd fcb-fronted
npm install
npm run dev

🤝 贡献指南

  1. Fork 本项目
  2. 创建新分支 git checkout -b feature/xxx
  3. 提交更改 git commit -m 'Add xxx'
  4. 推送到分支 git push origin feature/xxx
  5. 提交 Pull Request

❓ 常见问题

Q: 如何修改上传大小限制?

A: 在管理面板中修改配置项 uploadSize

Q: 如何配置存储引擎?

A: 在管理面板中选择存储引擎并配置相应参数

Q: 如何备份数据?

A: 备份 data 目录即可

更多问题请访问 Wiki

📊 项目统计

Featured|HelloGitHub

Repobeats

Star History

📜 免责声明

本项目开源仅供学习使用,不得用于任何违法用途,否则后果自负,与作者无关。使用时请保留项目地址和版权信息。