Gerege Template Platform¶
Production · 第 3 层 — 平台底座 ·
仓库:template-gerege-mn · open.gerege.mn
构建数字服务的底座。 这不是示例代码——而是一套完整的、可直接投产的、 经过安全加固与测试的平台。生态系统中的多数产品都由此分支而来。
继任底座是 Gerege Nexus
2026 年 8 月,平台底座的第二代已经到来:Gerege Nexus,一个带 应用商店的模块化单体。如今新产品不再分叉模板,而是写成 Nexus 的模块——若是 新品牌,则是从 upstream 分叉。Template 仍在 production 运行,但若你要启动 新项目,请先看 Gerege Nexus。
截至 2026-08-07,open.gerege.mn 已无法访问 —— 该主机现在提供的是
nexus.gerege.mn 的证书,因此 HTTPS 会因名称不匹配而失败。参见
域名映射。
核心思想¶
任何新服务都不该重新解决身份、安全、权限模型、审计与 AI。这些能力从第一天 起就是现成的;开发者只需补上自己所属领域的业务逻辑。
您构建的是价值,而不是基础设施。
内置了什么?¶
认证与会话¶
- eID 登录——二维码 / deep-link / 按登记号推送(long-poll 会话)。
- Google OAuth——辅助绑定;首次绑定必须经 eID 核验。
- JWT access + refresh(轮换);登出会同时作废两者。
- 没有密码,也没有邮箱/OTP 登录。
权限与机构¶
- RBAC——动态角色 + 权限目录;四级模型
(
superadmin → admin → manager → user)。 - super admin 是独立且启用 MFA 的账户——通过 onboarding 向导创建 (邀请白名单 → Google → eID → 邮箱 OTP → TOTP + 恢复码)。它保存在单独的表中, 因此同一个人既可以是 eID 管理员,也可以是 Google super admin。
- 机构与成员关系——创建/检索(经 Gerege Verify 向国家登记查询)、 管理成员与权限,全部按用户以 RLS 加以保护。
服务界面¶
- 政务服务门户——服务目录、申请、查询、通知、支付、预约。
- API 网关——由管理员维护的 services / routes / consumers / API key / policy,以及请求遥测。
- 文档签名(PAdES)——通过 G-Sign。
- 第三方集成——Google Drive/Meet、Dropbox 连接;令牌以 AES-256-GCM 加密存储。另有应用自带的 SFTP 存储。
AI¶
- Gemini 流水线——文本/语音对话、STT、TTS、实时翻译。
- 分层 system prompt——代码内置的护栏,加上管理员通过数据库配置的适用范围。
search_knowledge工具——让回答立足于知识库中的真实数据。
安全与可观测性¶
- 严格的安全响应头(CSP、HSTS、COOP/COEP/CORP)、CORS 白名单、限流、 HTTP 服务端各类超时。
- 参数化查询;Postgres RLS + 启动时的可执行性守卫(enforceability guard)。
- 审计日志——哈希链式、仅追加。
- OpenTelemetry + Prometheus + Zap。
详情请见安全页面。
组成结构¶
template-gerege-mn/
├── backend/ # Go · chi (net/http) · pgx (pgxpool) · PostgreSQL · Redis
│ └── docs/ # ARCHITECTURE · DEVELOPMENT · API_CONTRACT · SECURITY (EN/MN)
├── frontend/ # Next.js BFF —— 服务端侧代理,cookie 会话
└── ios/ # SwiftUI eID 客户端(GeregeSmartID SDK)
后端遵循 Clean Architecture——handler → usecase → repository → domain,
且不得反向引用。业务内核不会 import Web 框架。
来源与许可¶
后端源自开源项目
snykk/go-rest-boilerplate
(MIT,Najib Fikri)。HTTP 层已由 Gin 改为 chi (net/http),数据层由
sqlx 改为 pgx(pgxpool,手写 SQL)。对原项目的署名保留在 AUTHORS 文件中。
本项目采用 MIT 许可。
各版本¶
| 版本 | 技术栈 | 仓库 |
|---|---|---|
| Gerege Template Platform | Go + Next.js | template-gerege-mn |
| Government Template Platform V3.0 | Go + Next.js | template-dgov-mn |
| Government Template —— Node.js 版 | Node.js/TS + React | template-dgov-mn-nodejs |
Node.js 版是 Go 版的移植——Express 5 · pg · RLS + React。稳定化工作仍在进行。
由此分支出的产品¶
- Gerege Platform —— 增强版,自身即身份提供方
- Developer Portal
- Gerege Wallet
- Ring System · 「Khurdan」平台 —— 政务线
共享代码与自动同步
后端共享能力位于 open-gerege-core,前端共享能力位于
@gerege/ui-core。每日 git 自动同步会传播模板变更,并在冲突时创建 PR 或 issue。
详细文档¶
ARCHITECTURE、DEVELOPMENT、API_CONTRACT、SECURITY 等文档位于
template-gerege-mn 仓库的 backend/docs/ 目录中,提供蒙古语与英语两种版本。