Sabes en segundos si un alimento se puede, va con límite o hay que evitarlo. Lo buscas por su nombre y aparece con color, símbolo y palabra: el límite dice cuánto, y lo que se evita dice por qué y, si es temporal, hasta cuándo.
Search «ma» and the traffic light answers: avoid, limited or allowed¿Esto se puede? La dieta de tu hijo te responde en segundos.
Nutrikids pone en tu teléfono el plan de alimentación que el profesional le hizo a tu hijo, ese documento largo que nadie relee a la hora de la merienda. Lo vuelve una guía viva: qué se puede y qué no, con qué reemplazar lo que falta, qué toca ahora y cómo fue el día.
The text of this brochure is in Spanish.
Search «ma» and the traffic light answers: avoid, limited or allowedApple on pause, until when, and what to swap it forThe Red tab: what to avoid and the additives to watch on the label
Funcionalidades del MVP: Contadas contra docs/MANUAL-DE-USO.md y verificadas por un test que compara el total con los bloques .feature del brochure. El marco no-médico (nota de primer uso y disclaimer permanente) no cuenta: es el encuadre de la app, no una funcionalidad.Pantallas de la app: Archivos page.tsx bajo src/app/. La ruta /conoce sirve este brochure y no es una pantalla del producto.Pruebas end-to-end: Salida de `pnpm exec playwright test --workers=1` el 2026-10-27 sobre 69538dc, contra un build de producción con el chat en modo de prueba: 94 pruebas en dos proyectos (móvil Pixel 7 y escritorio), incluidas las de accesibilidad con axe, todas en verde.Cobertura de líneas del motor: v8 sobre src/lib/diet, src/lib/ia y src/lib/rate-limit (422 de 424 líneas), con umbrales del 80 % en vitest.config.ts.Llamadas de red del registro del día: Un e2e recorre marcar, anotar, recargar, cambiar idioma y consultar el historial con un contador que intercepta TODAS las peticiones y bloquea el service worker: cero llamadas a un backend y cero a orígenes externos.
01 · What changes
Who it is for, and why
Para la familia que cuida a un niño con una dieta médica estricta: la mamá, el papá o quien lo tenga a cargo ese día, que necesita saber qué darle sin abrir el documento y sin improvisar.
No califica al niño: sin calorías, peso, IMC ni percentiles, y sin convertir el «cumplimiento» en una nota. Lo que anotas del día, las horas y las notas sobre tu hijo, no sale del teléfono, ni siquiera hacia el asistente de inteligencia artificial.
02 · The map
One chapter per group: what it solves, when it fits, how it works, its screens and its cards.
2.1 · El semáforo: ¿esto se puede?★ The starBusca cualquier alimento y sabe al instante si se puede, cuánto y con qué reemplazarlo · 3 features
What it solves
Busca cualquier alimento y sabe al instante si se puede, cuánto y con qué reemplazarlo
Its pieces 3
Cuando falta un alimento, tienes a la mano con qué reemplazarlo sin salirte del plan. Al tocarlo ves el porqué en palabras simples y los reemplazos que trae tu plan, como «en vez de manzana: pera, kiwi, uvas o fresas».
Apple on pause, until when, and what to swap it forCompras lo empacado sabiendo qué buscar en la etiqueta. En la pestaña Rojo, la app lista los códigos de aditivo que el plan pide evitar, los que empiezan por E, y en qué productos suelen aparecer.
The Red tab: what to avoid and the additives to watch on the label2.2 · El día de hoy, en ordenQué toca ahora, qué ya pasó y cómo fue cada comida, anotado en segundos · 6 features
What it solves
Qué toca ahora, qué ya pasó y cómo fue cada comida, anotado en segundos
Its pieces 6
Ves de un vistazo todo lo que toca hoy y lo vas marcando a medida que pasa: cada comida con su horario, el suplemento del día y los vasos de agua. Al día siguiente la lista amanece limpia, sin borrar lo anterior.
The day's checklist: supplement taken, two of four glasses of waterAbres la app y sabes qué toca en este momento y qué sigue. Arriba aparecen la comida de la franja, el suplemento del día si falta y cómo va el agua, sin notificaciones, sin pedir permisos y sin reproches.
«Right now»: mid-morning snack is due, lunch is next, supplement pendingRecuerdas a qué hora comió de verdad, no a qué hora tocaba. Al marcar una comida, la app anota la hora y la muestra al lado («Hecho · 7:35 a. m.»), como memoria y nunca como calificación.
Checking off lunch keeps the real time: «Done · 12:48 p.m.»Llegas a la cita con el pediatra con lo que pasó en cada comida, sin fiarte de la memoria. Con un toque marcas «Lo rechazó», «Le dolió» o «Tuvo antojo» y, si quieres, escribes una línea que puedes editar o quitar.
A note on lunch: «Refused it» and «Only ate half the rice»Repasas cómo fueron los últimos días antes de una consulta. El historial queda por fecha, del más reciente al más antiguo, con las horas y las notas de cada comida, y es solo de consulta: no se edita.
Previous days by date, with each meal's times and notesSabes qué suplemento toca hoy, en qué dosis y en qué momento. El calendario de lunes a domingo resalta el día de hoy, y la marca de «ya lo tomó» es la misma de la lista del día.
The supplement calendar: today highlighted and already taken2.3 · Un chat que se sabe la dietaPreguntas como le hablarías a alguien que se sabe el plan de memoria, sin que opine de medicina · 4 features
What it solves
Preguntas como le hablarías a alguien que se sabe el plan de memoria, sin que opine de medicina
Its pieces 4
Preguntas «¿la manzana se puede?» y tienes la respuesta al instante, aunque no haya señal. El teléfono la saca de tu plan, sin inteligencia artificial, y la muestra como tarjeta del semáforo con sus reemplazos y la marca «Desde tu plan · sin IA».
«Can he have apples?»: an instant answer from the plan, no AIPara las preguntas abiertas, como «no tengo pollo, ¿qué le doy?», recibes una idea que respeta la dieta. Un asistente de inteligencia artificial lee el plan y responde solo con lo que este permite; la respuesta va marcada como «Respuesta de IA» y necesita internet.
An open question with the test assistant, labeled «AI answer»El chat no se mete en lo que le toca al médico. Si le preguntas por dosis, medicinas o síntomas, te devuelve con amabilidad al pediatra o al nutricionista. Esa respuesta sale de reglas fijas, antes de consultar a la inteligencia artificial.
Ask about a dose and the chat sends you back to the pediatricianLo que le preguntas al chat sobre tu hijo no se queda en la app. Al cerrar o recargar, la conversación queda en blanco, y los registros técnicos solo anotan datos de funcionamiento, nunca lo que escribiste. Es una decisión de privacidad, no un olvido.
It runs through the whole app.2.4 · La dieta real, dentro de la appEl plan del profesional entra desde un archivo y toda la app responde con él; antes, una demo para explorar · 3 features
What it solves
El plan del profesional entra desde un archivo y toda la app responde con él; antes, una demo para explorar
Its pieces 3
Toda la app pasa a responder con la dieta real de tu hijo. Eliges el archivo del plan que te compartieron, la app revisa que tenga el formato correcto antes de aceptarlo y te muestra un resumen de lo que encontró.
A synthetic plan loaded: the summary of what the app foundSi el archivo no abre desde el teléfono, igual cargas la dieta. Copias todo su contenido desde donde te lo enviaron, lo pegas en una caja de texto y la app lo revisa y lo carga como si fuera el archivo.
Plan B: the file's content pasted into the text boxRecorres toda la app antes de cargar nada, con una dieta de ejemplo inventada. Un letrero siempre visible dice si estás viendo la «Dieta demo» o «Tu dieta», y puedes pasar de una a otra cuando quieras.
No diet loaded: the badge reads «Demo diet» and you explore the app with it2.5 · Tuya y privada, en tu teléfonoSe instala como app, cambia entre español e inglés y lo borra todo cuando tú decidas · 3 features
What it solves
Se instala como app, cambia entre español e inglés y lo borra todo cuando tú decidas
Its pieces 3
La tienes en la pantalla de inicio, con su ícono, como cualquier otra app. Se agrega desde el menú del navegador del teléfono, sin pasar por una tienda de aplicaciones, y abre directo, sin la barra del navegador.
It runs through the whole app.Cualquier cuidador la usa en español o en inglés. Un toque cambia toda la interfaz y también el contenido de la dieta, y lo que alguien escribió en una nota se conserva tal cual, sin traducirse.
One tap on English and the app switches language, from header to settingsTú decides cuándo no queda rastro en el teléfono. Un botón borra la dieta cargada y todo el registro, con sus marcas, horas y notas, y deja la app otra vez en la demo. Pide confirmación, porque no se puede deshacer.
«Delete my data» asks for confirmation before wiping everything03 · La dieta, viva en el bolsillo
The whole path. No swimlanes: every box says who does it, and the ones with the screen icon show it.
- Start · Quien cuida: Un plan médico en un documento
- Step · Quien cuida: Carga la dieta del peque
- Step · Nutrikids: La guarda solo en el teléfono
- Step · Quien cuida: Pregunta «¿esto se puede?»
- Step · Nutrikids: Responde desde la dieta, sin red
- Step · Quien cuida: Registra el día: horas y notas
- Decision · Quien cuida: ¿Le hace una pregunta abierta?
- Decision · Nutrikids: ¿Pide dosis, medicinas o síntomas?
- Step · Nutrikids: Lo devuelve al pediatra, sin IA
- Step · Nutrikids: Envía la pregunta y el plan, sin el registro
- Step · El asistente de IA: Contesta con el plan como contexto
- End
Process notes
- 1La guarda solo en el teléfono. Sin servidor de datos, cuenta ni nube: la dieta y el registro viven en el teléfono.
- 2Envía la pregunta y el plan, sin el registro. El registro del día —las horas y las notas sobre su hijo— jamás sale del teléfono.
- 3Lo devuelve al pediatra, sin IA. Una regla fija responde antes de llegar a la IA: el chat no da consejo médico.
04 · Built with method
Every figure says where it comes from. And what the app does not do is spelled out too.
The figures, with their source
Where does it come from?
Contadas contra docs/MANUAL-DE-USO.md y verificadas por un test que compara el total con los bloques .feature del brochure. El marco no-médico (nota de primer uso y disclaimer permanente) no cuenta: es el encuadre de la app, no una funcionalidad.
Where does it come from?
Archivos page.tsx bajo src/app/. La ruta /conoce sirve este brochure y no es una pantalla del producto.
Where does it come from?
Salida de `pnpm exec vitest run --coverage --maxWorkers=2` el 2026-10-27 sobre 69538dc: 15 archivos, 214 pruebas, todas en verde.
Where does it come from?
Salida de `pnpm exec playwright test --workers=1` el 2026-10-27 sobre 69538dc, contra un build de producción con el chat en modo de prueba: 94 pruebas en dos proyectos (móvil Pixel 7 y escritorio), incluidas las de accesibilidad con axe, todas en verde.
Where does it come from?
v8 sobre src/lib/diet, src/lib/ia y src/lib/rate-limit (422 de 424 líneas), con umbrales del 80 % en vitest.config.ts.
Where does it come from?
Archivos de decisions/.
Where does it come from?
Campo `dependencies` de package.json. Incluye los adaptadores de proveedores de IA que el chat conmuta por variable de entorno.
Where does it come from?
Un e2e recorre marcar, anotar, recargar, cambiar idioma y consultar el historial con un contador que intercepta TODAS las peticiones y bloquea el service worker: cero llamadas a un backend y cero a orígenes externos.
Where does it come from?
Suma de los servicios contratados: Vercel Hobby (free) + GitHub Free + Sentry free + Groq free tier. Sin base de datos ni servidor propio que facturar. Techo declarado del proyecto: 10 USD/mes.
Where does it come from?
Bytes de docs/BROCHURE.html, medidos con wc -c el 2026-10-27 sobre 69538dc. Autocontenido: cero recursos externos, incluidas las cinco muestras de interfaz (SVG en línea, no imágenes).
What it is built with
- Next.jsla PWA móvil-primero y su única ruta de servidor, la del chat
- TypeScriptmodo estricto en todo el repositorio
- Tailwind + shadcn/uila interfaz, sobre los tokens del design system propio
- localStoragetoda la persistencia: la dieta y el registro del día, versionados y migrables. No hay base de datos
- Zodel esquema de la dieta: un archivo malformado se rechaza antes de entrar
- Vercel AI SDK + Groqel asistente del chat, conmutable por variable de entorno y con apagado manual
- Vitest y Playwrightlas pruebas, incluidas las de privacidad y las de accesibilidad
- Pino y Sentryregistro y errores, siempre solo con metadatos
Your data
- La dieta, las marcas, las horas y las notas viven solo en el teléfono: no hay servidor de datos, ni cuenta, ni nube.
- La app sale a internet para una sola cosa, las preguntas abiertas del chat, y ahí viaja únicamente el plan, sin el nombre del niño.
- El registro del día no puede llegar a ese envío ni por accidente: la parte de la app que lo guarda no está al alcance de la que habla con la IA, y dos pruebas automáticas con un dato centinela (una unitaria y una de punta a punta) fallan si alguien lo intentara.
- La conversación no se guarda y los registros técnicos llevan solo datos de funcionamiento, nunca contenido.
- «Borrar mis datos» elimina la dieta y todo el registro, incluidas las copias que dejaron versiones anteriores de la app.
What it never does
- Pone una nota al niño.
- Sube el registro del día a un servidor.
- Envía al asistente algo distinto de la pregunta y el plan.
- Responde por el médico: dosis, medicinas y síntomas van al pediatra.
- Pide cuenta.
Its limits, stated
- No califica al niño: sin calorías, peso, IMC, percentiles ni «cumplimiento».
- Sale a internet para una sola cosa, las preguntas abiertas del chat, y ahí viaja solo el plan, sin el nombre del niño.
- Sin servidor de datos, cuenta ni nube: la dieta, las marcas, las horas y las notas viven en el teléfono.
- Cada cuidador carga la dieta en su propio teléfono: el registro del día todavía no se comparte entre cuidadores.














