Saltar al contenido principal

ui-angular

SPA Angular 20. Dashboard de Crimoo para gestión de GTMs, CRM, conversiones offline y analytics.

Stack

  • Framework: Angular 20 (Standalone Components)
  • Estado: BehaviorSubject + Angular Signals (sin NgRx)
  • Auth: HTTP-only cookies con withCredentials: true
  • i18n: @ngx-translate/core (ES, EN, PT-BR)

Módulos principales

MóduloRutaDescripción
GTM/gtms, /gtms/:id/settingsCrear/configurar contenedores, custom loader
CRM/crm, /crm/contactos, /crm/dealsContactos, Kanban de deals, timeline
Conversiones Offline/conversiones-offlineCredenciales, triggers, historial
Analytics Dashboard/dashboardWidgets editables, filtros globales
Workspaces/workspacesMulti-tenancy, miembros, permisos
Copilot/crimoo-copilotChat IA con Google Gemini
Billing/plans-dashboard, /billing/*Planes y checkout Stripe

Estado global (sin NgRx)

Flujo de onboarding

Servicios y sus endpoints

Servicio AngularEndpoints principales
Auth/api/auth/login, /api/auth/me, /api/auth/google
GtmService/api/gtm, /api/gtm/:id, /api/gtm/:id/custom-loader
CrmService/api/contacts, /api/contacts/:id/timeline
OfflineConversionsService/api/conversions/credentials, /api/conversions/triggers, /api/conversions/events
AnalyticsService/api/analytics/:workspaceId/query, /api/analytics/:workspaceId/widget-data
WorkspaceService/api/workspaces, /api/workspaces/:id/members
BillingService/api/subscriptions/checkout, /api/subscriptions/status
GtmLoaderServiceCarga dinámica de crimoo.js desde custom domain

Custom GTM Loader desde el frontend

Deployment

ui-angular se despliega en Firebase Hosting (proyecto: crimoo-bf067).

URLs de producción

AmbienteURL
Producciónhttps://crimoo-bf067.web.app / https://crimoo-bf067.firebaseapp.com
Localhttp://localhost:4200

API URL

En producción, environment.prod.ts apunta a:

apiUrl: 'https://api.crimoo.com'

El dominio api.crimoo.com está en Cloudflare (proxied) y resuelve al gtm-proxy de la VPS, que rutea los requests /api/* a node-api.

Deploy

cd d:/work/ui-angular
ng build --configuration production
firebase deploy --only hosting --project crimoo-bf067

Flujo de Conversiones Offline en UI