📜 Documentación Técnica: Proyecto Tamalbits (PHP/JS)

Esta documentación ha sido preparada para estudiantes de ingeniería de software, enfocándose en la arquitectura, el flujo de datos y la integración de sistemas.


🏗️ Arquitectura del Sistema

El proyecto utiliza un modelo de Arquitectura Desacoplada donde el frontend y el backend interactúan mediante servicios RESTful.

graph TD
    A[Frontend: HTML5/JS/Bootstrap] -- Fetch API --> B[Proxy PHP]
    B -- cURL --> C[API Externa: Banco]
    A -- Fetch API --> D[Backend Local PHP]
    D -- mysqli --> E[(Base de Datos MySQL)]

Capas del Sistema:

  1. Presentación: HTML5, CSS3 (Vanilla + Bootstrap 5).
  2. Lógica del Cliente: JavaScript asíncrono (Fetch API).
  3. Integración: Proxy PHP para consumo de APIs externas.
  4. Servicios Backend: Endpoints PHP para lógica de negocio local.
  5. Persistencia: MySQL gestionado vía MySQLi.

📂 Descripción de Archivos

1. Capa de Datos (Backend PHP)

Archivo Propósito Puntos Clave
db.php Conexión a la Base de Datos Configura el charset utf8mb4 y maneja errores de conexión.
productos.php Catálogo de Productos Consulta la tabla productos y retorna un JSON normalizado.
usuario.php Perfil de Usuario Obtiene saldo de "Tamalbits" usando Sentencias Preparadas.
gastos.php Transacciones y Puntos Registra compras y actualiza puntos de fidelidad (Tamalbits).

2. Capa de Integración (Integración)

3. Frontend y Estilos