Análisis Técnico del Repositorio: Carpeta Ciudadana Mobile
Información General
Nombre del Proyecto: Carpeta Ciudadana Mobile
Repositorio: github.com/ogticrd/carpeta-ciudadana-mobile
| Elemento | Observaciones |
|---|---|
.github/ |
Contiene workflows de GitHub Actions (CI/CD). Se menciona una tarea de cleanup cache, lo que sugiere optimización de builds. |
src/ |
Carpeta principal de código fuente. Cambios recientes sugieren mantenimiento activo. |
assets/, accests/ |
Dos carpetas similares; podría haber una confusión de nombres o duplicación. Revisar si ambas son necesarias. |
.env.example, .env.local |
Uso de variables de entorno. Correcta separación entre variables públicas y privadas. Incluye integración con Sentry. |
App.tsx |
Proyecto basado en React Native (o React + Expo). Componente raíz de la app. |
Dockerfile |
Soporte para contenerización. Permite pruebas y despliegue estandarizado. |
GoogleService-Info.plist / google-services.json |
Indica integración con Firebase tanto para iOS como Android. Muy común en apps móviles. |
babel.config.js, metro.config.js |
Configuración típica de React Native. |
eas.json |
Archivo de configuración de EAS (Expo Application Services). Se usa para builds y actualizaciones OTA. |
package.json, tsconfig.json |
Proyecto en TypeScript, bien estructurado. |
Stack Tecnológico
| Elemento | Descripción |
|---|---|
| Framework base | React Native |
| Entorno móvil | Expo con EAS (Expo Application Services) |
| Lenguaje | TypeScript |
| Gestión de estado | Redux Toolkit + React Query |
| Navegación | React Navigation |
| Firebase | Integrado (push notifications, auth, etc.) |
| Feature flags | Unleash + GrowthBook |
| Autenticación | Expo Auth Session, Firebase, LocalAuth |
| Observabilidad | Sentry |
| Fuentes | Google Fonts (Poppins) |
DevOps / Automatización
| Área | Herramienta/Archivo | Comentarios |
|---|---|---|
| CI/CD | .github/workflows (presente) |
GitHub Actions configurado (ej. limpieza de caché, tests) |
| Contenedores | Dockerfile |
Contenedor de pruebas configurado |
"reset-project" |
Script personalizado (./scripts/reset-project.js) para reinicio de entorno. Declarado pero no se encontró el archivo – revisar si existe. |
|
| EAS (Expo Application Services) | eas.json |
Integración con EAS: build y deployment OTA para móviles |
Calidad del Código
@typescript-eslint, eslint-config-expo
Prettier
No explícitamente declarado
Análisis estático No SonarQube u otra herramienta detectada Depuración de dependencias Detectado Usa
depcheck y unimported para limpiar dependencias no usadas
Seguridad
.env.example
Si
Correcto uso para variables de entorno públicas
.env.local
Si
Presente en el repo (riesgo si contiene claves)
Sentry
Si
Integración con @sentry/react-native
Dependabot o Snyk
NO
No detectado. Recomendado para escaneo de vulnerabilidades