Equipo — The Good App

Resumen de avance (sesión de trabajo)

Hola a todos,

Les escribo para compartir el avance consolidado de esta sesión de trabajo en backend, panel de administración y cliente móvil. El objetivo era dejar configurado Firebase Admin de forma operativa desde nuestros propios sistemas, alinear el build del API con Prisma, y unificar la identidad visual en la app Android.

1. API (Nest — good-app)

  • Firebase Admin desde base de datos: el servicio de verificación de tokens puede inicializarse con las credenciales guardadas en PostgreSQL (Setting), además de las variables de entorno habituales. La clave usada depende de FIREBASE_ADMIN_ENV (staging vs producción).
  • Login social: antes de validar el token se fuerza una recarga desde BD (ensureInitializedFromDatabase) para que los cambios hechos en el admin apliquen aunque el proceso del API se hubiera levantado sin credenciales.
  • Mensajes de error: orientados a configurar credenciales vía panel Laravel o variables de entorno, según corresponda.
  • Tests: ajustes en los mocks de FirebaseAuthService en los tests de autenticación.
  • Prisma: el schema ya incluía campos y modelos necesarios; el problema de compilación venía del cliente generado desactualizado. Se añadió postinstall: prisma generate en package.json para que, tras cada npm install, el cliente quede alineado con el esquema (evita el mismo desfase en otros entornos).

2. Panel de administración (Laravel)

  • Pestaña Firebase: formulario para subir y validar el JSON de la cuenta de servicio de Firebase Admin por entorno (staging / producción), persistido en la tabla compartida de ajustes.
  • Rutas y textos: integración en el flujo de ajustes del admin, con cadenas en español e inglés según corresponda.

3. App Flutter (cliente)

  • Icono de la aplicación en Android: generación con flutter_launcher_icons a partir del logo de la empresa (iconoOscuro), incluyendo icono adaptativo y fondo acorde a la paleta de la app.
  • Splash nativo: flutter_native_splash con el mismo activo y color de fondo de marca (incluye recursos para Android 12).
  • Pantallas de bienvenida, login y registro: el logo se muestra desde assets locales (SVG embebido), sin depender de descargar el archivo desde el API; se unifica el uso del logo corporativo y se evita el icono genérico de Flutter en esos puntos.
  • Nombre visible en Android: etiqueta de la aplicación actualizada a The Good App en el manifiesto.

4. Repositorios y despliegue

Los cambios fueron integrados en la rama staging en los repositorios del API, del admin Laravel y del front Flutter. Para el API en cada entorno conviene definir explícitamente FIREBASE_ADMIN_ENV (staging o producción) según qué fila de ajustes deba leerse.

Cualquier duda sobre despliegue o regeneración de iconos (PNG a partir del SVG) la vemos en el canal o en la siguiente reunión.

Saludos cordiales,

Correo interno — avance técnico