Saltar a contenido

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í

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.