Gerege Template Platform¶
Production · Capa 3 — Base de plataforma ·
Repositorio: template-gerege-mn · open.gerege.mn
La base para construir servicios digitales. No es código de ejemplo: es una plataforma completa, lista para producción, endurecida en seguridad y probada. La mayoría de los productos del ecosistema derivan de aquí.
La base sucesora es Gerege Nexus
En agosto de 2026 llegó la 2.ª generación de la base de plataforma: Gerege Nexus, un monolito modular con tienda de aplicaciones. En lugar de forkear la plantilla, un producto nuevo se escribe ahora como módulo de Nexus o, para una marca, como fork del upstream. La Template sigue en producción, pero si va a empezar un proyecto nuevo, mire primero Gerege Nexus.
open.gerege.mn está inaccesible a fecha de 2026-08-07: ese host sirve
ahora el certificado de nexus.gerege.mn, así que HTTPS falla por discrepancia
de nombre. Véase el Mapa de dominios.
La idea central¶
Ningún servicio nuevo debería tener que resolver otra vez la identidad, la seguridad, el modelo de permisos, la auditoría y la IA. Todo eso llega listo desde el primer día; el desarrollador añade solo la lógica de su propio dominio.
Usted construye valor, no infraestructura.
Qué viene listo dentro¶
Autenticación y sesiones¶
- Acceso con eID — QR / deep link / push por número de registro (sesión con long-poll).
- Google OAuth — vínculo secundario; la primera vez la verificación por eID es obligatoria.
- JWT access + refresh (rotación); el cierre de sesión invalida ambos.
- Sin contraseñas, sin acceso por correo/OTP.
Permisos y organizaciones¶
- RBAC — roles dinámicos más un catálogo de permisos; modelo de cuatro
niveles (
superadmin → admin → manager → user). - El super admin es una cuenta aparte con MFA — se crea mediante un asistente de onboarding (allow-list de invitaciones → Google → eID → OTP por correo → TOTP + códigos de recuperación). Se guarda en su propia tabla, de modo que una misma persona puede ser admin por eID y super admin por Google.
- Organizaciones y membresías — crear/buscar (con consulta al registro estatal vía Gerege Verify), gestionar miembros y permisos, todo protegido con RLS para cada usuario.
La superficie de servicio¶
- Un portal de servicios públicos — catálogo de servicios, solicitudes, consultas, notificaciones, pagos, citas.
- Pasarela de API — services / routes / consumers / API key / policy gestionados por el administrador, más telemetría de peticiones.
- Firma de documentos (PAdES) — a través de G-Sign.
- Integraciones con terceros — conexiones con Google Drive/Meet y Dropbox, con los tokens cifrados mediante AES-256-GCM. Además del almacenamiento SFTP propio de la aplicación.
IA¶
- Pipeline de Gemini — chat de texto y voz, STT, TTS, traducción en directo.
- System prompt por capas — salvaguardas integradas en el código más el alcance que el administrador configura por base de datos.
- La herramienta
search_knowledge— ancla las respuestas en datos reales de la base de conocimiento.
Seguridad y observabilidad¶
- Cabeceras de seguridad estrictas (CSP, HSTS, COOP/COEP/CORP), allow-list de CORS, rate limit, timeouts del servidor HTTP.
- Consultas parametrizadas; RLS de Postgres más un guard de aplicabilidad en el arranque.
- Registro de auditoría — encadenado por hash, solo de adición.
- OpenTelemetry + Prometheus + Zap.
Consulte Seguridad para el detalle.
Estructura¶
template-gerege-mn/
├── backend/ # Go · chi (net/http) · pgx (pgxpool) · PostgreSQL · Redis
│ └── docs/ # ARCHITECTURE · DEVELOPMENT · API_CONTRACT · SECURITY (EN/MN)
├── frontend/ # BFF de Next.js — proxy del lado servidor, sesiones por cookie
└── ios/ # Cliente eID en SwiftUI (SDK GeregeSmartID)
El backend sigue Clean Architecture — handler → usecase → repository →
domain, sin back-imports. El núcleo de negocio no importa ningún framework
web.
Origen y licencia¶
El backend deriva del proyecto de código abierto
snykk/go-rest-boilerplate (MIT,
Najib Fikri). La capa HTTP se convirtió de Gin a chi (net/http) y la capa de
datos de sqlx a pgx (pgxpool, SQL a mano). La atribución al proyecto
original se conserva en el fichero AUTHORS. El proyecto está bajo licencia
MIT.
Variantes¶
| Variante | Stack | Repositorio |
|---|---|---|
| Gerege Template Platform | Go + Next.js | template-gerege-mn |
| Government Template Platform V3.0 | Go + Next.js | template-dgov-mn |
| Government Template — edición Node.js | Node.js/TS + React | template-dgov-mn-nodejs |
La variante Node.js es un port de la de Go — Express 5 · pg · RLS + React. La
estabilización continúa.
Productos derivados de aquí¶
- Gerege Platform — ampliada, IdP por sí misma
- Developer Portal
- Gerege Wallet
- Ring System · la plataforma «Khurdan» — la línea gubernamental
Código compartido y sincronización automática
Las capacidades comunes del backend viven en open-gerege-core, y las del
frontend en @gerege/ui-core. La sincronización git diaria propaga los
cambios y abre un PR o issue cuando hay conflictos.
Documentación detallada¶
Los documentos ARCHITECTURE, DEVELOPMENT, API_CONTRACT y SECURITY están
en el directorio backend/docs/ del repositorio template-gerege-mn, en
mongol e inglés.