# FileCodeBox
**Repository Path**: zhaodecang/FileCodeBox
## Basic Information
- **Project Name**: FileCodeBox
- **Description**: FileCodeBox 是一个轻量级文件快递柜,用户以匿名口令分享文本、文件,像拿快递一样取文件
- **Primary Language**: Python
- **License**: LGPL-3.0
- **Default Branch**: master
- **Homepage**: https://www.oschina.net/p/filecodebox
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 12
- **Created**: 2025-03-10
- **Last Updated**: 2025-03-10
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# FileCodeBox
Share text and files anonymously with a passcode, like picking up a package
[](https://github.com/vastsa/FileCodeBox/stargazers)
[](https://github.com/vastsa/FileCodeBox/network)
[](https://github.com/vastsa/FileCodeBox/issues)
[](https://github.com/vastsa/FileCodeBox/blob/master/LICENSE)
[](https://qm.qq.com/q/PemPzhdEIM)
[](https://www.python.org)
[](https://fastapi.tiangolo.com)
[](https://v3.vuejs.org)
[简体中文](./readme.md) | [Deployment Guide](https://github.com/vastsa/FileCodeBox/wiki/Deployment-Guide) | [FAQ](https://github.com/vastsa/FileCodeBox/wiki/FAQ)
## 📝 Introduction
FileCodeBox is a lightweight file sharing tool developed with FastAPI + Vue3. It allows users to share text and files easily, where recipients only need a passcode to retrieve the files, just like picking up a package from a delivery locker.
## 🖼️ Preview
🚀 Lightweight
Based on FastAPI + SQLite3 + Vue3 + ElementUI
|
📤 Easy Upload
Support copy-paste and drag-drop
|
📦 Multiple Types
Support text and various file types
|
🔒 Security
- IP upload limits
- Error attempt limits
- File expiration
|
🎫 Passcode Sharing
Random codes with customizable limits
|
🌍 Multi-language
Support for Simplified Chinese, Traditional Chinese, and English
|
🎭 Anonymous
No registration required
|
🛠 Admin Panel
File and system management
|
🐳 Docker
One-click deployment
|
💾 Storage Options
Local, S3, OneDrive support
|
📱 Responsive
Mobile-friendly design
|
💻 CLI Support
Command-line download
|
## 🚀 Quick Start
### Docker Deployment
```bash
docker run -d --restart=always -p 12345:12345 -v /opt/FileCodeBox/:/app/data --name filecodebox lanol/filecodebox:beta
```
### Manual Deployment
1. Clone the repository
```bash
git clone https://github.com/vastsa/FileCodeBox.git
```
2. Install dependencies
```bash
cd FileCodeBox
pip install -r requirements.txt
```
3. Start the service
```bash
python main.py
```
## 📖 Usage Guide
### Share Files
1. Open the website, click "Share File"
2. Select or drag files
3. Set expiration time and count
4. Get the passcode
### Retrieve Files
1. Open the website, enter passcode
2. Click retrieve
3. Download file or view text
### Admin Panel
1. Visit `/admin`
2. Enter admin password
3. Manage files and settings
## 🛠 Development Guide
### Project Structure
```
FileCodeBox/
├── apps/ # Application code
│ ├── admin/ # Admin backend
│ └── base/ # Base functions
├── core/ # Core functions
├── data/ # Data directory
└── fcb-fronted/ # Frontend code
```
### Development Environment
- Python 3.8+
- Node.js 14+
- Vue 3
- FastAPI
### Local Development
1. Backend development
```bash
python main.py
```
2. Frontend development
```bash
cd fcb-fronted
npm install
npm run dev
```
## 🤝 Contributing
1. Fork the project
2. Create your feature branch `git checkout -b feature/xxx`
3. Commit your changes `git commit -m 'Add xxx'`
4. Push to the branch `git push origin feature/xxx`
5. Open a Pull Request
## ❓ FAQ
### Q: How to modify upload size limit?
A: Change `uploadSize` in admin panel
### Q: How to configure storage engine?
A: Select storage engine and configure parameters in admin panel
### Q: How to backup data?
A: Backup the `data` directory
For more questions, visit [Wiki](https://github.com/vastsa/FileCodeBox/wiki/常见问题)
## �� Project Statistics and Analytics