Releases: Acedpol/expense-tracker-ui
Releases · Acedpol/expense-tracker-ui
Release list
v1.0.0 — Primera release estable
Primera release estable de expense-tracker-ui, la SPA de React que consume expense-api por HTTP.
Stack
- React 19 + TypeScript + Vite
- Tailwind CSS 4
- React Router (rutas protegidas, layout anidado)
- TanStack Query (estado de servidor, cache, invalidación tras mutaciones)
- React Hook Form + Zod (validación en cliente)
- Cliente API tipado de extremo a extremo: los tipos se generan con
openapi-typescripta partir del/openapi.jsonreal del backend - Vitest + React Testing Library + MSW
Funcionalidad
- Registro, login y logout reales contra
expense-api - Rutas protegidas + manejador global de sesión caducada (401 → logout automático → redirect a login)
- CRUD completo de Categorías (crear, listar, editar, eliminar)
- CRUD completo de Gastos (crear, listar, editar, eliminar, paginación, selector de categoría)
- 10 tests automatizados, CI en verde (lint + typecheck + test + build)
Bugs reales resueltos por el camino
- Backend:
ExpenseUpdate.datesolo aceptabanull(bug de shadowing de nombres en Python) — detectado por el generador de tipos de este mismo frontend, arreglado enexpense-api. - Frontend: token JWT caducado a mitad de sesión rompía la UI en vez de redirigir a login.
- CI: los tests fallaban de forma intermitente en GitHub Actions por una condición de carrera en el
localStoragenativo de Node al correr en paralelo — sustituido por un polyfill en memoria aislado por proceso.
Pendiente
- Deploy real (Vercel/Netlify) — aplazado, necesita cuenta propia
- Filtros/búsqueda en la lista de gastos
- Gráficos de gasto por categoría