Script para registrar Ingresos y Gastos con HTML, Bootstrap 5 y JavaScript


En este tutorial crearás un pequeño script que permite registrar ingresos y gastos, mostrarlos en un historial, calcular totales y mantener los datos en el navegador usando localStorage. Todo está separado en 3 archivos: index.html, style.css y script.js.

¿Qué vas a aprender?

  • Estructurar una interfaz simple con Bootstrap 5.
  • Manejar formularios y eventos en JavaScript.
  • Persistir datos en el navegador con localStorage.
  • Mostrar y eliminar transacciones, y calcular total de ingresos, gastos y balance.

Requisitos previos

  • Un navegador moderno (Chrome, Firefox, Edge, Safari).
  • Nada de servidor: todo funciona abriendo index.html localmente.

Estructura de archivos

/control-finanzas
├─ index.html
├─ style.css
└─ script.js

1) index.html (estructura y diseño)

Aquí definimos la estructura visual: header, formulario para agregar transacciones, tabla de historial y resumen.

2) style.css (estilos mínimos)

En este ejemplo no necesitas mucho CSS: Bootstrap se encarga del diseño. Aquí solo añadimos detalles estéticos.

3) script.js (lógica completa)

Este archivo implementa:

  • Carga y guarda en localStorage.
  • Renderizado de la lista de transacciones.
  • Agregar y eliminar transacciones.
  • Cálculo de totales y balance.
  • Notificaciones sencillas con clases de Bootstrap.

 

Explicación del flujo

  1. Inicio: Se crea la instancia de la clase FinanceTracker.

  2. Esperar DOMContentLoaded: Asegura que todo el HTML esté cargado.

  3. Configurar eventos: Conecta los formularios de ingreso y gasto.

  4. Inicializar gráficos: Se crean gráficos vacíos de ingresos y gastos.

  5. Actualizar dashboard: Calcula totales, balance y colores.

  6. Cargar transacciones: Muestra las transacciones guardadas en la pantalla.

  7. Interacciones: El usuario puede:

    • Agregar transacción: Se guarda en transactions y localStorage, se actualizan dashboard y gráficos, y se muestra notificación.

    • Eliminar transacción: Se elimina de transactions y localStorage, se actualiza dashboard y gráficos, y se muestra notificación.

  8. Notificaciones: Mensajes flotantes informan al usuario sobre acciones realizadas.

  9. Filtros: Opcionalmente, el usuario puede filtrar transacciones.

Este ejemplo  demuestra cómo con  HTML, CSS y JavaScript, apoyados en Bootstrap 5, se puede crear un script funcional para el control básico de gastos e ingresos. Puedes mejorar este sistema incorporando almacenamiento en una base de datos  MySQL, exportación de datos Excel o PDF para usos más avanzados.

Demo

¿Cansado del caos financiero? Necesitas un control serio.

Te ofrecemos un Sistema Web profesional para gestionar tus finanzas, desarrollado con la seguridad y robustez de PHP y MySQL.

👍 Apóyanos en Facebook

Tu apoyo nos ayuda a seguir creando contenido gratuito. Síguenos en nuestras redes 😃