Todo el trabajo
Proyecto06

CarbWatch

Busca ingredientes, calcula carbohidratos y estima insulina desde ajustes del usuario.

Visitar sitio web
DisciplinaFrontend Angular
Año2025
RolFrontend developer · Scrum Master
SectorEducación en salud
CarbWatch product interface screenshotCARBWATCH· HERO · 16:9
Resumen

Proyecto final frontend en Angular, originalmente llamado koolyhealth y presentado en la UI como CarbWatch. Los usuarios pueden registrarse, iniciar sesión, gestionar ajustes de carbohidratos/insulina, buscar ingredientes con Spoonacular, crear listas de ingredientes consumidos, calcular totales de carbohidratos, estimar dosis de insulina y navegar recetas servidas por backend.

Construido en un equipo estudiantil agile/Scrum donde trabajé como frontend developer y Scrum Master. Mi trabajo incluyó el scaffold Angular, rutas, auth guard, flujos de login/register/settings, búsqueda de ingredientes, cableado de calculadora, pasada UI con Tailwind/Flowbite, dark mode y buena parte de la limpieza final de templates.

Reto y enfoque
El reto

Qué estaba bloqueando el avance.

La app necesitaba combinar ajustes de cuenta, datos nutricionales de ingredientes, cantidades consumidas, páginas de recetas y cálculo de insulina de una forma que siguiera siendo entendible dentro del alcance frontend de un proyecto escolar.

El enfoque

Cómo lo resolví.

Construí rutas protegidas con Angular Router guards, un registro reactivo en dos pasos para cuenta y ajustes de insulina, estado de sesión/settings en localStorage, normalización de ingredientes Spoonacular, totales de carbohidratos con signals, llamadas compartidas a un servicio de calculadora, layouts con Flowbite/Tailwind y dark mode persistente. El proyecto está presentado deliberadamente como frontend educativo, no como dispositivo médico validado clínicamente.

Stack — desglose completo
Frontend
Angular 19TypeScript 5.6Standalone componentsAngular Router
UI / formularios
Tailwind CSS 3.4Flowbite AngularReactive FormsAngular Signals
Datos
Angular HttpClientSpoonacular APILocal API backend
Estado
localStorageAuth tokenUser settingsSelected ingredients
Calidad
Angular CLIKarmaJasmine smoke specs
Pantallas seleccionadas
Anterior

Temporal Workers

Siguiente

Movie Index App