Sobre el proyecto
Este repositorio contiene el frontend del cliente web de incorporación de pensiones de Tuleva, disponible en pension.tuleva.ee. Está construido con React y JavaScript/TypeScript, y ha evolucionado con el tiempo para adoptar prácticas modernas.
Detalles técnicos clave:
- Originalmente construido con JavaScript, Redux y Enzyme para pruebas, el proyecto ahora fomenta la conversión a TypeScript, componentes funcionales y el uso de React Query para la obtención de datos, con el contexto nativo de React para compartir estado localizado.
- El código incluye una guía de migración para alejarse de Redux, favoreciendo hooks de React Query y abstrayendo el uso legado de Redux en hooks separados.
- El desarrollo requiere Node.js LTS (22.17.0) y NPM (10.9.2), con asdf recomendado para la gestión de versiones.
- Para ejecutar localmente, instala dependencias con `npm install`, inicia el servidor con `npm run develop` (o `npm run develop-production` para producción) y ejecuta pruebas con `npm test`. Se espera que el servicio de incorporación esté en el puerto 9000 para ejecuciones no productivas.
- El despliegue se automatiza mediante CircleCI en push a master en AWS, mientras que el widget en línea se actualiza manualmente mediante FTP y actualizaciones de URL del tema de WordPress.
- Las actualizaciones de la versión de Node.js se gestionan editando engines en package.json, la configuración de CircleCI y .tool-versions.
Las pruebas utilizan React Testing Library y MSW, con un ejemplo en CancellationFlow.tsx que muestra migración incremental mientras reutiliza código Redux existente. Las pruebas dependientes de la zona horaria requieren TZ=UTC en las configuraciones de ejecución de IntelliJ.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.