尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗Family es un asistente familiar inteligente con voz e IA que centraliza en una sola aplicación: tareas del hogar, mantenciones, cuentas, compras e inventario, gastos, calendario, recordatorios y un asistente conversacional que puede consultar y modificar todo lo anterior.
La idea central: "Family sabe qué está pasando en la familia y ayuda a decidir qué hacer."
Ver también: ARCHITECTURE.md, AI.md, DATABASE.md, SECURITY.md.
@electric-sql/pglite (Postgres embebido, WASM) en desarrollo/tests; pg contra un Postgres real (ej. Supabase) en producción — mismo esquema SQL en ambos casos, sin tablas de mentira ni arreglos en memoria.httpOnly + bcryptjs para contraseñas.@anthropic-ai/sdk), con un motor de reglas local como respaldo cuando no hay clave configurada (ver AI.md).src/lib/voice.ts) para poder cambiar de proveedor sin tocar la UI.Requiere Node.js 20+ (probado con Node 24) y npm.
npm install
cp .env.example .env.local
Edita .env.local:
JWT_SECRET=genera-un-valor-aleatorio-largo
DATABASE_URL=
ANTHROPIC_API_KEY=
DATABASE_URL vacío para usar PGlite (Postgres embebido en un archivo local .pglite-data/) — no necesitas instalar ni configurar nada más.ANTHROPIC_API_KEY vacío para probar la app igual: el asistente funciona en "modo reglas" (ver AI.md).⚠️ PGlite (el Postgres embebido) no soporta que dos procesos escriban a la vez en
.pglite-data/. Detén el servidor (npm run dev) antes de correrdb:migrateodb:seed; hacerlo con el servidor corriendo puede corromper los datos y obligar a borrar.pglite-data/y regenerarlos.
Aplica el esquema de base de datos y carga una familia de demostración:
npm run db:migrate
npm run db:seed
El seed crea la Familia Fernández (demo) — Papá, Mamá, Martina, Julián y Matheo — con tareas,
compras (agrupadas por tienda: Supermercado / Feria), gastos, eventos, mantenciones y cuentas de
ejemplo, y muestra en la consola el correo y contraseña para iniciar sesión
([email protected] / FamiliaDemo2026!).
Levanta el servidor de desarrollo:
npm run dev
Abre http://localhost:3000, inicia sesión con la cuenta demo (ya precargada en el formulario) o
crea tu propia familia desde "Crear tu propia familia".
npm test
Corre toda la suite (permisos, aislamiento entre familias, flujos conectados, motor de IA, inteligencia proactiva, etc.) contra una base PGlite en memoria, aislada por archivo de prueba.
npm run build
npm start
Cualquier Postgres funciona (Supabase, Neon, RDS, uno propio). Define DATABASE_URL con la cadena
de conexión y vuelve a correr npm run db:migrate (y npm run db:seed si quieres datos de
demostración) apuntando a esa base — el código de la aplicación no cambia entre PGlite y Postgres
real.
DATABASE_URL=postgresql://usuario:password@host:5432/basededatos
Sin ANTHROPIC_API_KEY, Family funciona con un motor de reglas local que entiende los comandos
más comunes (agregar compras, registrar gastos, crear recordatorios/tareas, consultar lo
pendiente). Para conversación libre y comprensión de lenguaje natural abierto:
.env.local: ANTHROPIC_API_KEY=sk-ant-....Detalle completo de la arquitectura de IA, las herramientas disponibles y los niveles de confirmación en AI.md.
El botón 🎙️ flotante (o la página "Hoy") abre el panel del asistente. El micrófono usa el reconocimiento de voz nativo del navegador (Web Speech API) — funciona en Chrome y Edge de escritorio y Android; Safari/iOS tiene soporte parcial. Si el navegador no lo soporta, el panel avisa y permite escribir en texto, que funciona siempre. Las respuestas se leen en voz alta por defecto (se puede silenciar con el ícono 🔊/🔇).
El sistema de alarmas de tareas (15 min antes de vencer, 10 min después si sigue sin completarse) funciona de dos formas:
/api/notifications/scan) — ya funciona hoy, sin configuración extra./api/cron/check-alarms cada
1-5 minutos, y el servidor envía el aviso como notificación push del propio navegador
(protocolo Web Push — gratis, sin Outlook, sin SMS, sin servicio de terceros de pago; usa la
infraestructura de push de Chrome/Firefox/Edge, igual que cualquier sitio con notificaciones).Para que la opción 2 funcione hace falta desplegar la app a un hosting que esté encendido
24/7 (hoy solo corre en tu computador mientras tienes npm run dev activo) y un disparador
externo, porque el plan gratuito de Vercel limita sus Cron Jobs propios a una vez al día.
.env.local más las de push:
JWT_SECRET, DATABASE_URL (la de Neon), ANTHROPIC_API_KEY (opcional)VAPID_PUBLIC_KEY, VAPID_PRIVATE_KEY (genéralas una vez con
npx web-push generate-vapid-keys), VAPID_CONTACT_EMAILCRON_SECRET (cualquier texto largo aleatorio — protege el endpoint del cron para que nadie
más pueda llamarlo)DATABASE_URL apuntando a Neon en tu
.env.local local, corre npm run db:migrate una vez (crea las tablas en la base real).https://tu-proyecto.vercel.app/api/cron/check-alarms?secret=EL_MISMO_CRON_SECRETCon eso, el aviso llega como notificación nativa del sistema operativo aunque el navegador esté cerrado (mientras el dispositivo tenga internet), sin depender de Outlook, email ni SMS.
src/
app/ Páginas (App Router) y rutas de API (app/api/**)
components/ Componentes de UI reutilizables (nav, asistente, sesión)
services/ Lógica de dominio (tareas, compras, gastos, casa, memoria, inteligencia…)
ai/ Motor de IA: definición de herramientas, ejecutor con permisos/confirmación,
cliente de Claude, motor de reglas de respaldo, parsing de lenguaje natural
lib/ Auth, permisos, validación (zod), errores seguros, cliente API del navegador
db/ Esquema SQL, migraciones, cliente de base de datos, datos de demostración
types/ Tipos de dominio compartidos
tests/ Pruebas automatizadas (Vitest)
npm test): autenticación, permisos por rol, aislamiento entre familias,
flujos conectados (compra → gasto → inventario → lista), conflictos de calendario,
mantenciones y cuentas recurrentes, memoria, niveles de confirmación de la IA, motor de reglas
de lenguaje natural, inteligencia proactiva.npm run build sin errores, flujo completo en navegador (registro, login, crear
tareas/eventos/gastos/compras, chat del asistente en modo reglas y confirmaciones).ANTHROPIC_API_KEY real (sin esa clave no
se puede verificar el camino de Claude en vivo), ni el micrófono/voz en un navegador real con
hardware de audio.src/lib/voice.ts ya está preparada para ello.