Repositorios
Catalogo de Repositorios
Dominios de Negocio
| Repositorio | Dominio | Descripcion | Estado |
|---|---|---|---|
imagy-identity-gateway | Identity | API Gateway - BFF, OIDC, YARP, sesiones | Funcional |
imagy-identity-management | Identity | Tenant Management - Control Plane | Funcional |
imagy-flow-engine | Flow | Motor de flujos, ejecucion, proveedores, reglas | En diseno |
imagy-lending | Lending | Productos de credito, originacion, cartera | En diseno |
imagy-sign | Sign | Firma digital y electronica | En diseno |
imagy-subject | Subject | Subject 360, dispositivos, listas | En diseno |
Servicios de Plataforma
| Repositorio | Tipo | Descripcion | Estado |
|---|---|---|---|
imagy-shared | Libreria NuGet | Librerias compartidas .NET | En diseno |
imagy-infra | CDK/IaC | Infrastructure as Code (AWS CDK) | En diseno |
imagy-notifications | Servicio compartido | Notificaciones multi-canal (SMS, email, WhatsApp, push, webhook) | En diseno |
imagy-audit | Servicio compartido | Auditoria OCSF con consulta y reportes | En diseno |
Frontend
| Repositorio | Tipo | Descripcion | Estado |
|---|---|---|---|
imagy-console | Frontend admin | Panel administrativo React | En diseno |
imagy-console-public | Frontend publico | Apps publicas (wizard credito, ejecucion flujos) | En diseno |
Documentacion
| Repositorio | Tipo | Descripcion | Estado |
|---|---|---|---|
reimagine-platform | Docs | Documentacion central, steerings, contratos | Activo |
Organizacion en GitHub
Organizacion: github.com/ReimagineTech
Detalle por Repositorio
imagy-identity-gateway
| Campo | Valor |
|---|---|
| Dominio | Identity |
| Equipo | Team Identity |
| Stack | .NET 8, YARP, Keycloak OIDC, Redis |
| Puerto local | 5001 |
| BD | imagy_identity (compartida con management) |
| Documentacion | Identity Overview |
Responsabilidades:
- Autenticacion OIDC + PKCE (patron BFF)
- Sesiones en Redis (cookies httpOnly)
- Reverse proxy (YARP) hacia servicios internos
- JWT propagation a downstream
- Rate limiting, CORS, security headers
- Tenant routing (subdominio, header, query param)
- Back-channel logout
imagy-identity-management
| Campo | Valor |
|---|---|
| Dominio | Identity |
| Equipo | Team Identity |
| Stack | .NET 8, EF Core, Keycloak Admin API, MediatR |
| Puerto local | 4000 |
| BD | imagy_identity |
| Documentacion | Identity Overview |
Responsabilidades:
- CRUD tenants (onboarding, suspension, configuracion)
- CRUD usuarios, roles, modulos
- Gestion de organizaciones (Keycloak Organizations API)
- Temas visuales por tenant
- Delegated admin (cross-tenant)
- Clientes OIDC/SAML
imagy-flow-engine
| Campo | Valor |
|---|---|
| Dominio | Flow |
| Equipo | Team Flow |
| Stack | .NET 10, EF Core, Dapper, MassTransit, Valkey |
| Puerto local | 4001 |
| BD | imagy_flow |
| Documentacion | ImagFlow Overview |
Responsabilidades:
- Diseno y versionamiento de flujos (draft/published/archived)
- Ejecucion de pasos (sesion en Valkey)
- Provider Gateway (adapters, failover, circuit breaker)
- Motor de reglas (condiciones configurables)
- Notificaciones multi-canal
- Templates y duplicacion de flujos
imagy-lending
| Campo | Valor |
|---|---|
| Dominio | Lending |
| Equipo | Team Lending |
| Stack | .NET 10, EF Core, Dapper, MassTransit |
| Puerto local | 4002 |
| BD | imagy_lending |
| Documentacion | ImagLend Overview |
Responsabilidades:
- Productos de credito configurables
- Originacion digital (wizard publico)
- Simulacion de creditos
- Administracion de cartera (desembolsos, pagos, mora)
- Cobranza
- Integracion con ImagFlow (validacion) e ImagSign (firma)
imagy-sign
| Campo | Valor |
|---|---|
| Dominio | Sign |
| Equipo | Team Flow (inicialmente) |
| Stack | .NET 10, EF Core, Dapper, MassTransit |
| Puerto local | 4003 |
| BD | imagy_sign |
| Documentacion | ImagSign Overview |
Responsabilidades:
- Firma digital (certificado, validez legal)
- Firma electronica (OTP, biometrica, aceptacion)
- Multi-proveedor (Firmalo, Uanataca, Certicamara)
- Modo standalone y modo integrado (paso en flujo)
- Gestion de documentos y certificados
imagy-subject
| Campo | Valor |
|---|---|
| Dominio | Subject |
| Equipo | Team Platform (inicialmente) |
| Stack | .NET 10, EF Core, Dapper, MassTransit |
| Puerto local | 4004 |
| BD | imagy_subject |
| Documentacion | ImagID Overview |
Responsabilidades:
- Perfil unificado del sujeto (cross-tenant con vista aislada)
- Historial de interacciones (consume eventos de todos los dominios)
- Dispositivos asociados (fingerprint, IP, geolocalizacion)
- Listas negras, blancas y de vigilancia
- Score de confianza
- Alertas y patrones sospechosos
imagy-console
| Campo | Valor |
|---|---|
| Dominio | Frontend |
| Equipo | Team Platform |
| Stack | React 19, TypeScript 6, Vite 8, DevExtreme, TanStack Query, Zustand |
| Puerto local | 5173 |
| Dominio URL | dash.{tenant}.reimaginetech.io |
| Autenticacion | JWT via Keycloak (OIDC, cookie httpOnly) |
| Documentacion | UI Standards |
Responsabilidades:
- Panel administrativo unificado para todos los modulos y tenants
- Gestion de tenants, usuarios, roles, organizaciones
- Diseno de flujos (UI del Flow Service)
- Configuracion de productos de credito y landing pages
- Vista de solicitudes, cartera y cobranza
- Subject 360 (perfil del cliente, dispositivos, listas)
- Gestion de firmas (solicitudes, documentos, proveedores)
- Configuracion de temas y branding
- Editor visual de landing pages
- Dashboards y reportes
Requiere autenticacion. Solo accesible por admins y operadores logueados.
imagy-console-public
| Campo | Valor |
|---|---|
| Dominio | Frontend |
| Equipo | Team Platform |
| Stack | React 19, TypeScript 6, Vite 8, Zustand, React Hook Form, Zod, Tailwind |
| Puerto local | 5174 |
| Dominio URL | {tenant}.reimaginetech.io o dominio custom del tenant |
| Autenticacion | Sin JWT. Usa access_token o signing_token por operacion |
| Documentacion | Originacion Pipeline, UI Standards |
Responsabilidades:
- Landing pages de productos de credito (configurable, white-label)
- Simulador de credito integrado en la landing
- Wizard de originacion de credito (6 pasos multi-sesion)
- Ejecucion de flujos de ImagFlow (pasos de captura para usuario final)
- Pagina de firma de ImagSign (donde el firmante ejecuta la firma)
- Pagina de firma con OTP (ingreso de codigo)
No requiere autenticacion previa. El usuario final accede via link publico. La identidad se valida por access_token (wizard), signing_token (firma) o el flujo de ImagFlow.
Por que dos repositorios de frontend
| Aspecto | imagy-console (admin) | imagy-console-public |
|---|---|---|
| Autenticacion | JWT via Keycloak | access_token / signing_token |
| Usuarios | Admins, operadores | Usuarios finales (publico) |
| Bundle size | Grande (DevExtreme, DataGrid, Charts) | Ligero (solo lo necesario) |
| SEO | No necesario | Si (landing pages indexables) |
| Performance | Aceptable (usuarios internos) | Critica (primera impresion del cliente) |
| Dominio | dash.{tenant}.reimaginetech.io | {tenant}.reimaginetech.io o custom |
| Branding | Tema del tenant en el panel | White-label completo sin Imagy |
| Deployment | ECS o S3+CloudFront | S3+CloudFront (CDN agresivo) |
imagy-infra
| Campo | Valor |
|---|---|
| Dominio | Platform |
| Equipo | Team Platform |
| Stack | AWS CDK (TypeScript), Docker Compose |
| Documentacion | Infraestructura |
Responsabilidades:
- Infrastructure as Code (VPC, ECS, Aurora, ElastiCache, MQ)
- Docker Compose para desarrollo local
- CI/CD pipelines (GitHub Actions)
- Configuracion de WAF, KMS, Secrets Manager
- DNS y certificados (Route 53, ACM)
imagy-notifications
| Campo | Valor |
|---|---|
| Tipo | Servicio compartido |
| Equipo | Team Platform |
| Stack | .NET 10, EF Core, MassTransit, Twilio, SES, FCM |
| Puerto local | 4005 |
| BD | imagy_notifications |
| Documentacion | Notifications Overview |
Responsabilidades:
- Envio multicanal (SMS, Email, WhatsApp, Push, Webhook)
- OTP (generacion, envio, verificacion)
- Plantillas configurables por tenant, canal e idioma
- Notificaciones automaticas por eventos
- Envio masivo (bulk)
- Registro de envios con estado de entrega
imagy-audit
| Campo | Valor |
|---|---|
| Tipo | Servicio compartido |
| Equipo | Team Platform |
| Stack | .NET 10, EF Core, MassTransit, AWS Security Hub |
| Puerto local | 4006 |
| BD | imagy_audit |
| Documentacion | Audit Overview |
Responsabilidades:
- Registro automatico de eventos de auditoria (consume todos los dominios)
- Formato OCSF (Open Cybersecurity Schema Framework)
- Consulta con filtros avanzados
- Reportes agregados (por actor, recurso, periodo)
- Exportacion (OCSF JSON, CSV)
- Integracion con AWS Security Hub (FTR compliance)
- Inmutabilidad garantizada a nivel de BD
imagy-shared
| Campo | Valor |
|---|---|
| Dominio | Platform |
| Equipo | Team Platform |
| Stack | .NET 10, NuGet packages internos |
Responsabilidades:
- Librerias compartidas entre servicios:
Imagy.Shared.Identity— IIdentityContext, JWT propagation handlerImagy.Shared.Messaging— BaseConsumer, event signing, idempotencyImagy.Shared.Persistence— TenantRlsInterceptor, BaseReadRepositoryImagy.Shared.Api— Envelope responses, error handling middleware, idempotency middleware
reimagine-platform
| Campo | Valor |
|---|---|
| Dominio | Docs |
| Equipo | Todos |
| Stack | VitePress, Mermaid |
| Puerto local | 5173 (docs:dev) |
| URL | docs.reimaginetech.io (futuro) |
Responsabilidades:
- Documentacion de arquitectura
- Steerings cross-proyecto (reglas para todos los repos)
- Contratos de eventos y APIs internas
- ADRs (Architecture Decision Records)
- Documentacion por dominio
- Guias practicas
- Estructura de equipos
Steerings disponibles:
Convencion de Nombres
| Patron | Ejemplo |
|---|---|
imagy-{dominio} | imagy-lending, imagy-sign |
imagy-{dominio}-{calificador} | imagy-identity-gateway, imagy-console-public |
| Siempre lowercase con guiones | imagy-flow-engine (no ImagFlowEngine) |
Ver ADR-005: Naming Convention para la justificacion completa.
Estructura Interna de cada Repo Backend
imagy-{domain}/
├── src/
│ ├── Imagy.{Domain}.Api/
│ ├── Imagy.{Domain}.Application/
│ ├── Imagy.{Domain}.Domain/
│ ├── Imagy.{Domain}.Infrastructure/
│ └── Imagy.{Domain}.Migrations/
├── tests/
│ └── Imagy.{Domain}.Tests/
├── .kiro/
│ └── steering/ # Steerings locales (referencian al central)
├── .editorconfig
├── .gitignore
├── Dockerfile
├── docker-compose.yml # Solo este servicio + infra
└── README.mdVer Coding Standards para detalles de la estructura.