DiegoBarrionuevo
← Trabajo seleccionadoProducto propioEn desarrollo

Decís lo que gastaste; la app lo entiende.

Texto, audio o foto del comprobante; la IA propone, vos confirmás.

Diseño y desarrollo2026
Expo SDK 56React Native 0.85TypeScriptDrizzle · SQLiteCloudflare WorkersOpenAI
La captura

Un mensaje entra; un movimiento sale.

Escribís como hablás: “gasté 18 mil en nafta con la Visa Galicia”. También podés mandar un audio o sacarle una foto al ticket. El modelo devuelve un JSON con esquema estricto: tipo, monto, descripción, medio de pago, tarjeta, y si el movimiento toca o no el saldo de una cuenta.

Lo que falta queda marcado, no inventado: si el mensaje no dice la moneda, el movimiento cae en Pendientes con ese campo en ámbar. Y nada se guarda solo. La IA propone, vos confirmás: esa es la regla que ordena todo el producto.

3
canales: texto, audio, foto
1
confirmación humana por movimiento
30
frases rioplatenses en el corpus de evaluación
0,9
umbral de aprobación del corpus
El disponible

Disponible real, no saldo de cuenta.

El número grande de Inicio no es el saldo del banco. Es lo que de verdad podés gastar: saldo real menos lo reservado, menos el ahorro, menos lo invertido. Cuentas, tarjetas, cuotas, deudas, reservas, metas de ahorro e inversiones viven en el mismo libro, y la resta se hace en el dominio, nunca en la pantalla.

Si reservás más de lo que tenés, el disponible se va a negativo y la app te lo dice: Sobre-comprometido · Revisar. No se recorta a cero, porque un cero tranquilizador esconde justo lo que tenés que ver.

4
términos: saldo real, reservado, ahorro, inversión
Inicio

La pantalla que ya existe, en claro y en oscuro.

Esto no es un canvas: es la app corriendo en el simulador de iOS, en su primer arranque. Tus cuentas con el disponible en $0,00, la barra Registrá con IA con sus tres botones, y una tarjeta que explica el trato: escribís, grabás o sacás una foto, la IA lo arma y vos confirmás antes de guardar.

Blanco y tinta, tarjetas sobre una superficie apenas gris y tres colores con significado fijo: ámbar para lo pendiente, rojo para gastos y sobrecompromiso, esmeralda para ingresos y ahorro. El botón de IA, elevado en el medio de la barra de pestañas, es el único acento.

Pantalla Inicio en modo claro: Finanzas, Tus cuentas, la tarjeta Disponible $0,00, la barra Registrá con IA, la tarjeta Registrá tu plata como un mensaje y el estado vacío Sin cuentas todavía
Inicio · simulador de iOS, claro
La misma pantalla Inicio en modo oscuro
Inicio · simulador de iOS, oscuro
El proxy

Solo viaja la captura; el libro se queda.

La app no habla con OpenAI: habla con un Worker de Cloudflare que guarda la clave y expone tres rutas, /parse, /transcribe e /image. Lo único que cruza la red es el mensaje, el audio o la foto; el libro contable nunca sale del teléfono.

Cada dispositivo tiene una cuota diaria, 20 textos, 10 audios y 10 fotos, y 30 pedidos por minuto por IP. El texto lo lee gpt-5.4-nano, el audio gpt-4o-mini-transcribe y los tickets gpt-4o-mini con visión, todos con salida json_schema estricta y un hash del esquema compartido entre la app y el Worker para detectar desvíos.

20 / 10 / 10
cuota diaria por dispositivo
30
pedidos por minuto por IP
Tarjetas y cuotas

Comprar con tarjeta no mueve el banco. Pagar el resumen, sí.

Una compra con tarjeta suma deuda a la tarjeta y no toca la cuenta bancaria hasta que el resumen se paga en el vencimiento. Cada tarjeta tiene cierre y vencimiento; cada compra en cuotas reparte sus cuotas en los meses que siguen, 1/6, 2/6, hasta 6/6.

Con eso la app proyecta el mes: esperado a recibir, esperado a pagar y neto del mes. No es un pronóstico de IA, es la suma de lo que ya está comprometido.

2
fechas por tarjeta: cierre y vencimiento
3
líneas de proyección mensual
0
movimientos bancarios hasta pagar el resumen
La arquitectura

Hexagonal, local-first, probada.

Expo SDK 56 con expo-router, React Native 0.85 con la nueva arquitectura, React 19 y TypeScript. NativeWind con tokens de Tailwind para la interfaz, Zustand en slices para el estado y Drizzle ORM sobre expo-sqlite para el libro, que vive en el teléfono con 19 migraciones versionadas.

Las capas son las de la arquitectura hexagonal: dominio, casos de uso con sus puertos, adaptadores de infraestructura y UI. Veinte puertos, dieciséis repositorios, 501 archivos fuente. Y 1.119 tests en 99 suites verdes al cierre de la Fase 7, con un corpus de 30 frases rioplatenses que el parser tiene que aprobar al 90 %.

501
archivos fuente
20
puertos de aplicación
16
repositorios
19
migraciones SQL
1.119
tests en 99 suites
En desarrollo
1.119tests
19migraciones
3canales de captura

Sin publicar todavía: un producto propio en desarrollo, mobile-first.

Capturas del simulador de iOS; sin usuarios ni métricas de uso.
Siguiente proyectoDonWeb Cloud — Plataforma de contenidosLa plataforma editorial de DonWeb Cloud: Ghost como núcleo, un theme a medida y un dashboard propio que alimenta series, hubs y portadas.