FileCodeBox:Star4.9k,类似百度网盘,小团队、小公司都用得上的文件共享与分享工具,支持设置分享密码,界面清爽简单易用
FileCodeBox的界面简洁直观,就像一个文件快递柜一样,用户可以匿名口令分享文本和文件。它的操作流程非常简单,分享者只需将文件或文本放入这个“快递柜”,并生成提取码,接收者凭借这个提取码就可以像取快递一样轻松获取文件。
界面效果
功能预览
(一)前端仓库与演示站点
它有着丰富的功能界面,包括新版界面和经典界面。
1. 新版界面
- 文件上传:用户可以方便地将本地的文件上传到FileCodeBox中,无论是文档、图片还是其他类型的文件都能轻松上传。
- 文本分享:对于代码片段、简短的文字说明等文本内容,也可以快速分享。
- 文件管理:方便用户对已经上传的文件进行管理,比如查看文件的相关信息、删除不需要的文件等。
- 系统设置:在这里用户可以对整个FileCodeBox的系统进行个性化设置,例如设置一些安全参数等。
- 移动端:考虑到如今移动设备的广泛使用,它完美支持移动端访问,让用户可以随时随地分享和获取文件。
- 深色模式:为了满足不同用户在不同环境下的视觉需求,提供了深色模式的界面。
- 国际化:支持中文简体、繁体及英文等多种语言,方便不同地区的用户使用。
- 响应式:能够根据不同的设备屏幕大小自动调整布局,提供最佳的视觉体验。
2. 经典界面
- 首页:是整个项目的入口页面,简洁明了地展示了项目的主要功能入口。
- 上传:直接引导用户进行文件上传操作。
- 管理:类似于新版界面中的文件管理功能,管理已上传的文件。
- 设置:对系统相关参数进行设置。
- 分享:这里是生成文件分享提取码的地方。
- 下载:接收者获取文件后,可以在这里进行下载操作。
核心特性
(一)轻量简洁
FileCodeBox基于FastAPI + SQLite3 + Vue3 + ElementUI构建,这种架构使得它部署起来非常简单,不需要复杂的配置,而且性能出色。它不会占用过多的系统资源,无论是在个人电脑还是小型服务器上都能稳定运行。
(二)便捷上传
支持多种上传方式,如复制粘贴和拖拽上传。这对于用户来说非常方便,不需要像传统的文件上传那样繁琐地选择文件路径等操作。例如,你可以直接将文件从文件夹中拖到FileCodeBox的上传区域,或者复制文件内容后粘贴到相应的文本分享区域。
(三)多种类型支持
不仅仅局限于某一种类型的文件或文本,它支持文本和各类文件的分享。无论是办公文档、图片、视频还是其他类型的文件,都可以毫无压力地进行分享。
(四)安全机制
- IP限制上传次数:为了防止恶意上传,它会对每个IP的上传次数进行限制。例如,如果某个IP在短时间内频繁上传文件,超过了设定的次数,系统将拒绝该IP的上传请求。
- 错误次数限制:当用户在输入提取码等操作时,如果错误次数过多,系统也会采取相应的限制措施,以保护文件的安全性。
- 文件过期机制:分享者可以设置文件的过期时间,一旦超过这个时间,文件将无法被获取,这有助于保护隐私和节省存储空间。
(五)提取码分享
采用随机提取码的方式进行文件分享,并且分享者还可以自定义提取码的使用次数及有效期。例如,你可以设置提取码只能使用一次,并且在24小时内有效,这样可以更加精准地控制文件的分享范围和时效性。
(六)多语言支持
正如前面提到的,支持中文简体、繁体及英文等多种语言。这使得它在全球范围内都能被广泛使用,不同语言背景的用户都能轻松上手。
(七)匿名分享
这是FileCodeBox的一个重要特性,无需注册登录就可以进行文件的分享和获取。这在保护用户隐私方面做得非常好,尤其是在一些只需要临时分享文件的场景下,用户不需要担心个人信息的泄露。
(八)管理面板
提供了一个功能齐全的管理面板,在这里可以进行文件管理和系统配置。例如,管理员可以查看所有上传的文件列表,对文件进行删除、查看详细信息等操作,同时还可以对系统的一些参数进行调整,如上传大小限制、存储引擎的配置等。
(九)容器部署
支持Docker一键部署,这对于熟悉Docker的用户来说非常方便。只需要简单的命令就可以将FileCodeBox部署起来,例如:
docker run -d --restart=always -p 12345:12345 -v /opt/FileCodeBox/:/app/data --name filecodebox lanol/filecodebox:beta
(十)存储扩展
支持多种存储方式,除了本地存储外,还支持S3协议、OneDrive等。这意味着用户可以根据自己的需求和实际情况选择合适的存储方式,比如如果需要更大的存储空间或者更安全的存储环境,可以选择OneDrive等云存储服务。
(十一)响应式设计
在不同的设备上,如电脑、平板、手机等,都能自适应屏幕大小,提供良好的用户体验。无论是在大屏幕的电脑上还是小屏幕的手机上,界面布局都能合理调整,方便用户操作。
(十二)终端支持
支持命令行下载,对于一些习惯使用命令行操作的用户来说非常友好。
应用场景
(一)临时文件分享
在很多情况下,我们只需要快速分享单个文件,而且不需要繁琐的注册登录过程。比如,你想给同事分享一份会议资料,或者给朋友分享一张照片,FileCodeBox就非常适合这种场景。你只需要将文件上传,生成提取码发给对方,对方就可以快速获取文件。
(二)文本快速分享
对于代码片段、文本内容等的分享也非常便捷。例如,程序员之间分享一段代码,或者写作者分享一段文字内容,都可以使用FileCodeBox。不需要像其他文件分享工具那样复杂的操作,直接将文本粘贴到相应区域,生成提取码即可分享。
(三)匿名文件传输
当我们需要保护隐私进行文件传输时,FileCodeBox的匿名特性就发挥了作用。比如,在一些敏感信息的传递过程中,不需要透露自己的身份信息就可以完成文件的传输,确保了信息的安全性。
(四)临时文件存储
支持设置过期时间的文件存储功能非常实用。有时候我们可能只是临时存储一些文件,过了一段时间后就不需要了。使用FileCodeBox,我们可以设置文件的过期时间,到期后文件自动失效,既节省了存储空间,又保护了隐私。
(五)跨平台传输
由于支持多种设备访问,所以可以在不同设备间快速传输文件。例如,你可以在电脑上上传文件,然后在手机上凭借提取码获取文件,方便快捷地实现跨平台文件传输。
(六)小型分享服务
对于一些个人或者小型团队来说,可以搭建私有的文件分享服务。比如,一个小型的学习小组可以使用FileCodeBox来分享学习资料,或者一个小团队内部共享工作文件等。
具体使用方法
(一)Docker部署
如果选择Docker部署的方式,只需要按照以下命令进行操作:
docker run -d --restart=always -p 12345:12345 -v /opt/FileCodeBox/:/app/data --name filecodebox lanol/filecodebox:beta
这个命令会在后台运行FileCodeBox容器,将本地的/opt/FileCodeBox/
目录挂载到容器内的/app/data
目录,并且将容器的12345端口映射到本地的12345端口,方便通过浏览器访问。
(二)手动部署
- 克隆项目:首先使用
git clone https://github.com/vastsa/FileCodeBox.git
命令克隆项目到本地。 - 安装依赖:进入克隆后的项目目录
cd FileCodeBox
,然后执行pip install -r requirements.txt
来安装项目所需的依赖。 - 启动服务:最后使用
python main.py
命令启动服务。
(三)分享文件
- 打开网页后,点击“分享文件”按钮。
- 然后选择本地的文件或者直接拖拽文件到指定区域。
- 设置文件的过期时间和可使用次数。
- 最后获取系统生成的提取码,这个提取码就是接收者获取文件的凭证。
(四)获取文件
- 接收者打开网页,输入分享者提供的提取码。
- 点击“获取”按钮。
- 如果是文件则可以进行下载操作,如果是文本则可以直接查看内容。
(五)管理面板
- 访问
<beginning of the code>/admin<end of the code>
路径。 - 输入管理员密码(如果有设置的话)。
- 在这里可以管理文件,如查看文件列表、删除文件等,还可以进行系统配置,例如修改上传大小限制、配置存储引擎等操作。
同类项目
以下是一些与FileCodeBox功能类似的同类项目:
1. wetransfer
wetransfer是一款在线文件传输工具,用户可以上传最大2GB的文件,并通过生成的链接分享给他人。
2. send-anywhere
send-anywhere支持多种平台和设备,用户可以通过扫描二维码或输入代码的方式,实现跨平台文件传输。
3. filemail
filemail是一款简单易用的在线文件传输工具,用户可以上传最大50GB的文件,并通过生成的链接分享给他人。
总结
FileCodeBox作为一款开源的在线文件共享工具,凭借其简单易用、安全可靠的特点,在多种应用场景中发挥着重要作用。相信随着项目的不断完善,FileCodeBox将会成为更多用户在文件共享领域的首选工具。
项目地址
https://github.com/vastsa/FileCodeBox