Componentes del Frontend CDP
Visión General
El frontend del CDP está construido con una arquitectura de componentes modulares y reutilizables. Cada componente está diseñado para ser independiente, testeable y fácil de mantener.
Componentes Principales
DashboardTremor
Ubicación: src/components/DashboardTremor.jsx
Propósito: Componente principal que orquesta todo el dashboard
Props
No recibe props - es el componente raíz
Estado
const [selectedTenant, setSelectedTenant] = useState(56); // Tenant por defecto
const [tenantName, setTenantName] = useState('Chelsea IO - Exit');
Características
- Selector de Tenants: Dropdown con 5 tenants principales (202K+ consumidores total)
- Sistema de Tabs: 5 pestañas principales (Overview, CDP Analytics, Data Viewer, Google Ads, VTEX)
- Responsive Design: Adaptable a móviles y desktop
- Auto-refresh: Actualización automática cada 30 segundos
Tenants Disponibles
{
56: 'Chelsea IO - Exit (65.2K consumidores)',
52: 'Celada SA - BAPRO (45.3K consumidores)',
53: 'Cooperativa de Trabajo (15.9K consumidores)',
55: 'EL DORADO SOCIEDAD (11.7K consumidores)',
1: 'PZ Interamericana Textiles (11.4K consumidores)'
}
Ejemplo de Uso
// En App.jsx
import DashboardTremor from './components/DashboardTremor';
function App() {
return <DashboardTremor />;
}
CDPAnalytics
Ubicación: src/components/CDPAnalytics.jsx
Propósito: Análisis completo del Customer Data Platform
Props
interface CDPAnalyticsProps {
tenantId: number; // ID del tenant actual
tenantName: string; // Nombre del tenant para display
}
Funcionalidades
1. Análisis RFM
- Endpoint:
/api/v2/cdp/analytics/rfm - Segmentos: 8 segmentos RFM (Champions, Loyal, En Riesgo, etc.)
- Visualización: Cards con métricas y distribución por segmento
- Datos: Recency promedio, Frequency, Monetary value
2. Predicción de Churn
- Endpoint:
/api/v2/cdp/analytics/churn - ML Model: Predicción de probabilidad de abandono
- Risk Levels: Alto (>70%), Medio (40-70%), Bajo (<40%)
- Acciones: Recomendaciones automáticas por nivel de riesgo
3. Perfiles de Cliente
- Endpoint:
/api/v2/cdp/analytics/customer-profile - Detalles: Historial de compras, CLV, segmentación
- Búsqueda: Por email, ID o nombre
- Timeline: Visualización cronológica de interacciones
Estado Interno
const [loading, setLoading] = useState(false);
const [activeTab, setActiveTab] = useState('rfm');
const [rfmData, setRfmData] = useState(null);
const [churnData, setChurnData] = useState(null);
const [error, setError] = useState(null);