BernuviaBernuvia
Categoría: SaaSWeb

Vetria — SaaS multi-clínica para veterinarias (Next.js 15 + NestJS 11)

1/15
#veterinaria#multi-tenant#gestión de clínicas#agenda de citas#expediente clínico

Software veterinario con código fuente: agenda, expediente, recetas PDF, cobros, caja, inventario, hospitalización y portal del tutor. Multi-clínica con RLS. Interfaz solo en español.

29 USDC35 USDC−17%

Pago protegido

Tu dinero queda en custodia durante 1 día

Entrega inmediata

Descarga el código completo al pagar

Compra respaldada

¿Algún problema? Levanta una incidencia

Qué incluye
  • Código fuente completo: web Next.js, API NestJS, worker BullMQ, esquema Drizzle, migraciones y seed con 2 clínicas demo
  • Docker Compose de desarrollo, Dockerfiles, workflows de GitHub Actions y guías de despliegue (VPS, Fly.io, Cloud Run)
  • 45 pruebas E2E con Playwright y pruebas unitarias con Vitest
  • README y 5 guías en español; THIRD_PARTY_NOTICES.md y CHANGELOG. Sin node_modules (se instalan con pnpm)
Tecnologías
NENext.jsNENestJSPOPostgreSQLTYTypeScriptDODocker
Descripción

Vetria es un software de gestión para clínicas veterinarias, listo para operarse como SaaS: muchas clínicas en una sola instalación, cada una aislada en la base de datos con Row-Level Security de PostgreSQL. No es un kit de UI: agenda, expediente clínico, recetas, cobros, caja, inventario, hospitalización, portal del tutor y reportes funcionan de punta a punta, con API REST documentada, datos demo y pruebas automatizadas.

Idioma: interfaz 100 % en español (México)

La interfaz, los correos, los PDF y los mensajes de validación están solo en español, con formatos de México (es-MX, moneda predeterminada MXN, IVA 16 %, CFDI). No incluye un sistema de internacionalización (i18n) ni traducciones. Los identificadores del código están en inglés; los comentarios y la documentación, en español. Si lees este anuncio traducido, el producto no lo está.

Para quién es

  • Agencias y freelancers que venden software a veterinarias en México y Latinoamérica.
  • Emprendedores que quieren lanzar su propio SaaS veterinario por suscripción.
  • Equipos que buscan una base multi-tenant en TypeScript para salud o servicios.

Funcionalidad

Agenda

  • Lista de citas y calendario con arrastrar y soltar; detección de empalmes por veterinario.
  • Horarios disponibles por veterinario según la jornada y zona horaria de la clínica.
  • Citas en serie (cada semana, cada 2 semanas o cada mes, de 2 a 12): se crean como citas individuales y la serie se detiene en el primer empalme.
  • Lista de espera con sugerencias cuando se libera un hueco y confirmación de asistencia por enlace.

Expediente clínico

  • Pacientes con foto y varios pacientes por tutor; archivado lógico que conserva historial y pagos.
  • Notas clínicas en Markdown con historial de versiones.
  • Signos vitales con gráfica de peso y adjuntos (imágenes con miniatura WebP).
  • Vacunas y desparasitaciones: próximos refuerzos, vencimientos y cartilla en PDF.

Recetas y documentos

  • Receta en PDF con firma digitalizada y cédula profesional del veterinario.
  • Recibos, cartilla, corte de caja y hoja de hospitalización en PDF.

Cobros y caja

  • Pagos totales o parciales por cita, con folio secuencial por clínica.
  • Caja con apertura, cierre y arqueo (esperado vs. contado).
  • Facturas CFDI simuladas: XML y PDF de prueba sin validez fiscal, con la interfaz lista para conectar un PAC real.

Inventario

  • Catálogo de servicios y productos, existencias con mínimo y kardex de movimientos.
  • Descuento automático de existencias al completar o cobrar la cita, con devolución si se revierte.

Hospitalización

  • Jaulas y áreas, internamientos, notas de seguimiento por turno (mañana, tarde, noche) y alta.

Portal del tutor

  • Acceso sin contraseña mediante enlace mágico: citas, cartilla, recetas, recibos y solicitud de citas.
  • Bandeja de solicitudes para que el personal acepte o rechace.

Recordatorios

  • Recordatorios automáticos de citas por correo, SMS o WhatsApp (Twilio), con enlace para confirmar o cancelar.
  • Aviso diario por correo de refuerzos de vacunas y desparasitaciones próximos a vencer.
  • Bitácora de cada envío con su estado.

Reportes y exportación

  • Dashboard e informes con gráficas por fecha, veterinario y método de pago.
  • Exportación a CSV y Excel (.xlsx); bitácora de auditoría consultable y exportable.

Multi-clínica y sucursales

  • Registro de clínicas, invitaciones de equipo y roles: propietario, administrador, veterinario y recepción.
  • Sucursales con zona horaria propia; suscripción por planes con límites (Stripe o modo simulado).
  • Búsqueda global con ⌘K / Ctrl+K, PWA instalable y diseño oscuro por defecto.

Seguridad

  • RLS en PostgreSQL: la API usa un rol sin bypass, así que una consulta no puede salir de su clínica.
  • JWT con refresh tokens rotativos en cookies httpOnly, Argon2, verificación de correo y recuperación de contraseña.
  • Rate limiting por IP y por clínica, CSP y cabeceras de seguridad, logs con requestId, Sentry opcional.

Stack técnico

CapaTecnologíaMonorepopnpm workspaces + Turborepo, TypeScript estrictoWebNext.js 15 (App Router), React 19, Tailwind CSS v4, Radix UI, FullCalendar, RechartsAPINestJS 11 sobre Fastify, Zod, OpenAPI/Swagger (más de 180 operaciones)DatosPostgreSQL 16, Drizzle ORM, migraciones versionadas, RLSJobsRedis 7 + BullMQ (correos, recordatorios, respaldos), worker separableArchivosAlmacenamiento S3 compatible (MinIO en local)CalidadVitest, Playwright, ESLint, GitHub Actions

Qué incluye

  • Código fuente completo: web, API, worker, esquema de base de datos, migraciones y seed con 2 clínicas demo.
  • Docker Compose para desarrollo, Dockerfiles multi-stage y workflows de CI y release (imágenes a GHCR).
  • 45 pruebas E2E con Playwright y pruebas unitarias con Vitest.
  • README y guías en español: inicio, despliegue, seguridad, respaldos y cambio de marca.
  • THIRD_PARTY_NOTICES.md y CHANGELOG. Las dependencias npm se instalan con pnpm (no van en el ZIP).

Requisitos

  • Node.js 22 LTS (recomendado; mínimo 20) y pnpm 10.
  • Docker con Docker Compose v2 (Docker Desktop, OrbStack, Colima o Docker Engine).

Instalación

Tras pnpm install y copiar .env.example a .env:

  • pnpm infra:up: Postgres, Redis, Mailpit y MinIO en Docker.
  • pnpm db:migrate: esquema, rol de la API y políticas RLS.
  • pnpm db:seed: datos de demostración.
  • pnpm dev: web en localhost:3000 y API en localhost:4000.

Despliegue

Guías paso a paso para un VPS con Docker Compose y Caddy (HTTPS automático), Fly.io y Google Cloud Run. La imagen de la API trae los comandos api, worker y migrate; incluye runbook de respaldos de Postgres a S3.

Qué está simulado o requiere tus cuentas

  • Stripe: la suscripción de clínicas funciona en modo simulado; para cobrar de verdad necesitas tu cuenta y precios de Stripe.
  • Twilio: sin credenciales, SMS y WhatsApp solo se registran en la bitácora; para enviar necesitas tu cuenta.
  • Correo: en local se usa Mailpit; en producción necesitas tu proveedor SMTP.
  • CFDI: no incluye un PAC. Los comprobantes son de prueba y no tienen validez fiscal; la estructura está lista para conectar un PAC real, cuya integración y contrato corren por tu cuenta.
  • Almacenamiento S3, PostgreSQL y Redis de producción los aportas tú.

Licencia

Se vende con la licencia estándar de comprador de Bernuvia: puedes usar y modificar Vetria, desplegarlo como SaaS propio y construir productos para tus clientes. No puedes revender ni redistribuir el código como plantilla. Las dependencias de código abierto conservan sus licencias (THIRD_PARTY_NOTICES.md). La compra no incluye derechos sobre la marca “Vetria”: incluye una guía para poner la tuya.

Preguntas frecuentes

¿Está en inglés?

No. La interfaz, los correos y los PDF están solo en español (México) y no hay sistema i18n. Puedes agregar uno (por ejemplo, next-intl), pero requiere extraer los textos y no está incluido.

¿Las facturas CFDI son válidas ante el SAT?

No. El generador interno produce XML y PDF de prueba. Para timbrar debes contratar un PAC e implementar su conector en la interfaz incluida.

¿Cómo se aíslan los datos entre clínicas?

Cada tabla tiene la clínica como clave y una política RLS en PostgreSQL. La API se conecta con un rol sin bypass y fija la clínica en cada transacción.

¿Puedo venderlo como SaaS a veterinarias?

Sí, con tu marca. Lo que no puedes es revender el código como plantilla.

¿Necesito Stripe o Twilio para probarlo?

No. Sin credenciales funcionan en modo simulado y todo se prueba en local con Docker.

¿Puedo usar otra base de datos?

No sin reescribir partes importantes: el aislamiento depende de RLS de PostgreSQL 16.

¿Funciona en el celular?

Es una aplicación web adaptable que se puede instalar como PWA. No incluye apps nativas para iOS ni Android.

Plantillas relacionadas

−33%

Smart-Money Tracker for Polymarket – macOS SwiftUI App

Aplicación nativa de macOS para descubrir, seguir y analizar las carteras más rentables de Polymarket: tasa de ganancia real, apuestas compartidas, alertas y simulación de copy-trading. Sin claves API, sin backend.

Aplicación de escritorio

10 USDC15 USDC
3
−58%

MediAgenda - medical booking SaaS

Completo SaaS de reservas médicas construido con Next.js 14, Prisma y Stripe. Cuatro portales (pacientes, doctores, administrador, soporte) chat en tiempo real, registros médicos, bilingüe EN/ES. Lanza tu clínica en días.

SaaS

19 USDC45 USDC
(1)1
−54%

Lumora – Visual Website Builder SaaS with Bootstrap 5 (Full Source)

Constructor de páginas con arrastrar y soltar, editor de código en vivo, 8 plantillas, publicación con un clic con dominios personalizados, equipos con roles y planes de Stripe. Listo para Docker.

SaaS

18 USDC39 USDC
−21%

Whiteout – 3D Zombie Shooter for Web & Android (three.js + TS)

Un completo shooter de supervivencia en primera persona: corre a través de un campo helado y acaba con hordas, jefes y manadas de perros. Web + Android, 100% procedural, EN/ES, código TypeScript limpio.

Juegos

22 USDC28 USDC

Aún no hay reseñas. Sé la primera persona en contar tu experiencia.