Skip to content

Repository files navigation

StockScan — recuperación técnica

Recuperación documentada de una aplicación Android de inventarios creada originalmente con Expo y React Native. El código TypeScript original y el servidor original se perdieron; este repositorio conserva la evidencia recuperable del APK y una reimplementación local del backend para continuar el proyecto.

Este repositorio no presenta el pseudocódigo recuperado como si fuera el código fuente original. La separación entre código ejecutable, reconstrucción y evidencia está indicada en cada carpeta.

Pantalla principal de StockScan

Qué código contiene

Ruta Tipo Descripción
servidor_recuperado/app/ Código ejecutable Backend FastAPI y persistencia SQLite reimplementados
servidor_recuperado/tests/ Código ejecutable Prueba de humo para los flujos principales
codigo_recuperado/modulos_app/ Referencia Pseudocódigo separado por las 25 rutas de Expo Router
codigo_recuperado/assets_recuperados/ Recursos Iconos y splash extraídos del APK conservado
herramientas/ Código auxiliar Scripts usados para analizar Hermes y ajustar referencias
documentacion/ Especificación Informe, contrato de red, OpenAPI y guía de recuperación
capturas/ Evidencia Interfaces ejecutadas en el teléfono original

Funciones identificadas en la aplicación

  • Creación y administración de inventarios.
  • Captura de fotografías para OCR.
  • Lectura de códigos de barras y búsqueda por SKU.
  • Alta, edición, eliminación, orden y filtrado de productos.
  • Cantidades originales y encontradas.
  • Inventarios simples, múltiples, guardados y en progreso.
  • Reportes de diferencias, unidades y valor económico.
  • Temas visuales Día, Noche y Rosado.
  • Almacenamiento local y consumo de una API REST.

Tecnologías identificadas en el APK

Área Tecnología
Lenguaje original TypeScript y TSX
Aplicación móvil React Native y Expo SDK 54
Navegación Expo Router
Motor JavaScript Hermes
Cámara Expo Camera
Códigos de barras Google ML Kit
Estado local AsyncStorage
Interacción Reanimated y Gesture Handler
Comunicación Fetch y API REST
Plataforma comprobada Android

Backend reimplementado

El servidor recuperado utiliza:

  • Python.
  • FastAPI.
  • Uvicorn.
  • SQLite.
  • Pydantic.
  • OpenAPI.

Incluye 40 rutas compatibles con los contratos observados en la aplicación. Es una reconstrucción para demostración y desarrollo; no es el backend original.

Ejecutar el servidor

cd servidor_recuperado
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
cp .env.example .env
./run.sh

Documentación interactiva:

  • http://127.0.0.1:8000/docs
  • http://127.0.0.1:8000/redoc

Ejecutar la prueba de humo

pip install -r requirements-dev.txt
python tests/smoke_test.py

Estado actual

  • El APK versión 1.0.0 fue recuperado y analizado localmente, pero no se incluye por tamaño y seguridad.
  • Se identificaron 25 rutas de Expo Router y el contrato principal de la API.
  • El servidor original ya no está en línea.
  • El APK instalado conserva fija la URL del servidor anterior, por lo que no apunta al backend nuevo.
  • La reimplementación local funciona como base para reescribir el cliente.
  • Falta reconstruir el frontend en un proyecto Expo limpio y compilar un APK nuevo.

Próximo paso técnico

Crear una aplicación Expo SDK 54 nueva, migrar las pantallas prioritarias desde las especificaciones de codigo_recuperado/modulos_app, sustituir la URL fija por EXPO_PUBLIC_API_URL y conectar el backend incluido.

Privacidad y límites

El repositorio excluye el APK de 106 MB, DEX, recursos completos decompilados, bases SQLite locales y entornos virtuales. No deben publicarse datos reales de inventarios, fotografías, credenciales o información extraída del almacenamiento privado del teléfono.

About

Recuperación técnica de una app Expo de inventarios: módulos Hermes documentados y backend compatible reimplementado con FastAPI y SQLite.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages