Skip to content

LeoLee0812/filebeam

Repository files navigation

📡 FileBeam · 文件秒发公网

Next.js Deploy License

拖个文件进来 → 稍等一会 → 拿到一条公网链接 → 到点自动删。

专治「我有个 HTML 报告 / Markdown 笔记 / PDF / Word / PPT / Excel,想临时发给别人在浏览器直接看」这类需求:不用建仓、不用配置、不用登录,比开一个 Vercel 项目轻得多。

🌐 在线用:https://filebeam.saveme505.help

✨ 支持的文件与处理方式

你丢进去的 FileBeam 怎么处理 别人打开看到
.html / .htm(自包含单文件) 直接托管 浏览器渲染的网页
.md / .markdown 服务端渲染成漂亮 HTML(代码高亮 + 深色模式)再托管 一篇排版好的文章
.pdf 直接托管 浏览器原生 PDF 阅读器
.docx .pptx .xlsx .doc .ppt .xls .csv 托管拿直链,再套 微软 Office Online / 谷歌 Docs 预览器 在线预览的 Word/PPT/Excel,无需装 Office
  • 可选 AES 密码门:HTML / Markdown 可设访问密码,内容用 AES-GCM 加密后再上传,链接公开但没密码打不开(浏览器端 WebCrypto 解密)。
  • 临时、自动删:所有链接走 litterbox(catbox 免费临时托管),无需账号,到点(1h / 12h / 24h / 72h)自动清除。
  • 二维码 + 历史记录:每条链接自动生成二维码;历史存在你自己的浏览器 localStorage,服务端不落库。

🏗️ 架构

浏览器拖文件 → Next.js Serverless API(app/api/upload)做 Markdown 渲染 / AES 加密 / Office 包装 → 转发上传到 litterbox → 返回公网 URL。全程无数据库、无账号体系。

app/
  page.tsx            拖拽上传前端(React 客户端组件)
  api/upload/route.ts 上传接口(Node runtime)
lib/process.ts        Markdown 渲染 / AES 密码门 / Office 包装 / litterbox 上传
local-python/         纯本地版(FastAPI 网页 + beam.py 命令行),大文件/离线可用

🚀 本地开发

npm install
npm run dev        # http://localhost:3000

部署:推到 GitHub 后在 Vercel 一键 Import 即可,无需任何环境变量。

💻 本地版(local-python/

不想经过公网服务、或要传超过 4MB 的大文件,用纯本地 Python 版:

cd local-python
./start.sh                          # 网页版,自动开 http://127.0.0.1:8787
# 或命令行:
./beam.py 笔记.md --expire 1h --password 1234

详见 local-python/README.md

⚠️ 注意

  • 网站版单文件 ≤ ~4MB(Vercel Serverless 请求体上限)。更大的文件请用本地版,litterbox 本身支持到很大。
  • litterbox 单文件托管,带外部图片/JS 的多文件静态站不适用,请先自包含成单个 HTML。
  • litterbox 有内容审核,且任何人拿到链接都能访问——私密内容务必设访问密码。
  • 免费临时服务,别传敏感/违规内容,也别当长期图床。

📄 License

MIT © Leo

About

拖个文件进来,拿到一条公网链接,到点自动删 —— HTML/Markdown/PDF/Word/PPT/Excel 秒发公网,Next.js + litterbox

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages