Synaplan
开源 AI 软件平台,面向企业:自托管 AI 代理,符合 GDPR 的聊天机器人小部件,RAG 知识库,WhatsApp 与 Outlook AI,MCP,多模型路由。支持 Docker、Kubernetes 或在 Germ 托管。
AI 翻译
尚未收集仓库信息。
尚未检测到更新。GitHub 发布版本后会显示在这里。
制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗SaaS multi-tenant para restaurantes, bares y restobares (Argentina y España). Dominio: yatay.app. Carta QR, pedidos, sala, cocina/bar, caja, reservas, compras, métricas y Muro. El nombre viene del yatay, la palmera de Entre Ríos (hecho en Paraná).
Roadmap y arquitectura: docs/ROADMAP.md.
Next.js 16 (App Router) · React 19 · Tailwind CSS 4 · Prisma 7 · PostgreSQL · Zod · Vitest
Requisitos: Node 20.9+ (probado con Node 24).
npm install
npm run db:start # Postgres local aislado (prisma dev), no usa ninguna base existente
npm run db:migrate # aplica migraciones
npm run db:seed # carga el local de demo "La Casona"
npx next dev -p 3100 # http://localhost:3100
El puerto 3000 suele estar ocupado por otro proyecto: usamos el 3100. Si cambiás
prisma/schema.prisma, reiniciá el servidor de desarrollo (el cliente de Prisma queda en memoria entre recargas).
Credenciales de prueba: ver el encabezado de prisma/seed.ts.
| URL | Qué es |
|---|---|
/la-casona | Carta pública |
/la-casona/m/<qr> | Carta desde el QR de una mesa (enlaces en Admin → Mesas) |
/login | Panel (dueño, admin, caja) |
/login/pin/la-casona | Personal con PIN (mozo, cocina, bar) |
/platform | Panel de la plataforma (alta de locales y módulos) |
| Script | |
|---|---|
npm test | Tests (incluye aislamiento entre tenants; requiere la base levantada) |
npm run typecheck / npm run lint | Verificación estática |
npm run db:studio | Explorar la base |
npm run db:reset | Borra y recrea la base local |
tenantDb(tenantId) (src/lib/tenant-db.ts), que fuerza el tenantId. El cliente db crudo solo para auth, plataforma y resolución por slug.src/lib/auth/guards.ts); el proxy.ts es solo un chequeo optimista.useFormAction (src/lib/use-form-action.ts) para no perder lo escrito si falla la validación.MockImage / FadedImage), negro en oscuro y blanco en claro.