Skip to content

Repository files navigation

FileCodeBox(umbrella)

高性能文件/文本匿名分享平台的装配仓库:本仓不含业务代码,只负责把各模块仓库拉齐成一个可开发、可构建、可部署的完整工作区。

拆分前的单仓库完整版本保留在 legacy 分支(全量历史)。 English overview: README.en-US.md

架构文档

完整的架构图集(生态全景 / 仓库依赖 / core 分层 / 请求流 / 数据流 / 部署形态 / 发布流水线)见 docs/architecture.md(Mermaid 渲染)。

产品路线图见 ROADMAP.md;参与贡献前请读 CONTRIBUTING.md,安全漏洞请走 SECURITY.md 的披露流程。变更记录见 CHANGELOG.md。

模块仓库

仓库 角色 版本
contracts 契约层:错误码 + Thrift 生成类型(纯类型,零业务依赖) v0.2.1
core 业务核心库:10 个域服务 + repo/storage + bootstrap.Bootstrap() 库入口 v0.6.4
server 独立部署应用:main 薄壳 + 前端静态资源 + Dockerfile v0.6.4(跟随 core)
frontend Vue3 + TS + Vite + Element Plus(API 规范由后端运行时生成 /openapi.json) -
filescodebox-fnos 飞牛 fnOS 应用适配(可选,make setup 默认拉取) v0.2.2

依赖方向(单向,CI 守护):server / fnos / frontend ──► core ──► contracts

快速开始

git clone https://github.com/filescodebox/filescodebox.git && cd filescodebox

make setup     # 拉齐五个模块仓库(幂等,重复执行=更新)
make test      # 全仓测试(Go 三模块 + 前端 typecheck)
make lint      # golangci-lint 三 Go 模块(CI 同款门禁)
make build     # workspace 联编
make smoke     # 起 server 跑冒烟(健康检查/admin登录/文本分享)
# bash scripts/smoke-full.sh   # 全能力真机冒烟(39 项断言,含临时 Redis)

纯 Docker 部署(详见 docs/DEPLOY-COMPOSE.md):

cp .env.example .env          # 可选,全部项有安全默认
docker compose up -d          # ghcr 发布镜像,http://localhost:12345
# BUILD=1 make compose-up     # 本地构建(需先 make setup)
# docker compose --profile nginx up -d   # 加 nginx 反代(须配 FCB_TRUSTED_PROXIES,见部署指南)

默认管理员 admin / admin123(生产务必以 FCB_ADMIN_PASSWORD 覆盖)。JWT 密钥留空时首启自动生成并持久化到 ./data/.jwt_secret。

工作区布局(setup 后)

FileCodeBox/            ← 本仓(装配层:脚本/联编/编排)
├── go.work             # contracts+core+server 本地联编
├── contracts/  core/  server/  frontend/   ← 独立 git 仓库(gitignore 掉)
└── data/               ← compose 数据卷

各模块仓库独立开发、独立 CI、独立发版;server/Dockerfile 的构建上下文恰好就是本目录,make docker 直接出完整镜像。

发版

打 v* tag 即自动构建多架构镜像推 ghcr(见各仓 release.yml): ghcr.io/filescodebox/server · ghcr.io/filescodebox/filecodebox-fnos

原 README(产品功能/截图/API 说明)

见 legacy 分支 README。

About

FileCodeBox的高性能Golang实现 - 文件快递柜-匿名口令分享文本,文件,像拿快递一样取文件(FileCodeBox - File Express Cabinet - Anonymous Passcode Sharing Text, Files, Like Taking Express Delivery for Files)

Topics

Resources

Contributing

Security policy

Stars

11 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages