chore: 初始化 monorepo 脚手架与代码骨架

- Bun workspaces:apps/web(Vue 3.5 + Vite 8 + naive-ui)· apps/server(Hono 4.13 + Drizzle)· packages/shared(契约类型)
- 代码骨架:四表 Drizzle schema · 11 个端点占位(501)· 管理面口令中间件 · 同步引擎占位(5 分钟 tick + 防重入)
- 命令链:dev / build / test / lint / type-check / db:*(见 AGENTS.md)
This commit is contained in:
2026-09-14 23:54:58 +08:00
parent 45b312b357
commit 138a1b7685
50 changed files with 2739 additions and 0 deletions
+26
View File
@@ -0,0 +1,26 @@
/**
* 环境变量(部署时经 env 注入;全量清单见仓库根 `.env.example`)。
* 缺关键变量时在「首次使用处」报错,不在进程启动时硬崩(便于本地起骨架)。
*/
function required(name: string): string {
const v = process.env[name]
if (!v) {
throw new Error(`缺少环境变量 ${name}(见 .env.example)`)
}
return v
}
export const env = {
/** 监听端口(Vite dev 代理与生产反代都指向它) */
port: Number(process.env.PORT ?? 3000),
/** PostgreSQL 连接串 */
databaseUrl: process.env.DATABASE_URL ?? '',
/** 管理面口令(X-Manage-Token;见 API 契约 约定 6) */
manageToken: process.env.MANAGE_TOKEN ?? '',
/** 凭证主密钥(HKDF 派生 hmac / aes 子密钥;丢失 = 全部 key 需重新登记) */
keysMasterKey: process.env.KEYS_MASTER_KEY ?? '',
/** 上游 NewAPI 站点地址(同步引擎调用的 BaseURL) */
newapiBase: process.env.NEWAPI_BASE ?? '',
}
export { required }