Cash Flow

Un sistema personal para llevar el control de mis finanzas y gastos.

Stack
Ruby 3.4, Rails 8, Hotwire (Turbo + Stimulus), SQLite
Vistas
ViewComponent, Chartkick, Bootstrap
Jobs
Solid Queue con tareas recurrentes, Mission Control
Caché y cable
Solid Cache, Solid Cable, ambos sobre SQLite
Calidad
RSpec, Capybara, SimpleCov, Rack::Attack, Sentry
Rol
Diseño, desarrollo y operación
Estado
En uso diario desde 2023

Puedo ingresar gastos manuales. A inicios de mes, se generan los gastos fijos.

Un job recurrente de Solid Queue corre el día 1 de cada mes y crea los gastos fijos; los que caen el 30 o 31 se ajustan al último día del mes. Los montos se guardan como enteros para evitar errores de redondeo.

Cash Flow - imagen 1

La sección de analítica me permite saber cómo van mis gastos en las diferentes categorías según fechas o tipo de gasto.

Categorías jerárquicas (padre e hijas) y consultas por rango de fechas, graficadas con Chartkick. También hay una API JSON versionada con el gasto semanal por categoría.

Cash Flow - imagen 2

Hay un apartado para labores del hogar o tareas más personales. En vez de hacer un nuevo software, lo agregué aquí. Así tengo todo a la mano.

Un job diario revisa las tareas próximas o pendientes y me envía un resumen por correo con Action Mailer y Resend.

Cash Flow - imagen 3

Y también tengo la lista de mercado muy cerca. Chao Google Keep.

Agregar y marcar productos usa Turbo Streams, así la lista se actualiza sin recargar la página.

Cash Flow - imagen 4