Estudio de caso 02 / 03
Fisio Nexus
Administración de pacientes y atenciones.
- Estado
- Aplicación web desplegada
- Año
- 2026
- Rol
- Full Stack Developer · Software Architecture
- Repositorio
- Repositorio privado.

Redactado a partir de la documentación y el código del proyecto; pendiente de confirmación del autor.
Fuente: Código, historial y pruebas del repositorio del proyecto.
01
Contexto
Aplicación web en español para una persona que administra un consultorio de terapias en La Fortuna de San Carlos, Costa Rica.
Responsabilidades
- Diseño y arquitectura del sistema: aplicación de una sola página sobre Supabase, desplegada en Cloudflare
- Desarrollo frontend con React, TypeScript y Vite: fichas, agenda, atenciones con temporizador y cobros
- Desarrollo backend en PostgreSQL y PL/pgSQL, con autenticación de Supabase Auth
- Modelado y gestión de datos con migraciones SQL versionadas y políticas de seguridad por fila (RLS)
- Diseño del acceso a los datos y de sus permisos por rol
- Integración entre la interfaz, la autenticación, la base de datos y las invitaciones de cuentas
- Diseño de interfaces y experiencia de usuario para la operación diaria del consultorio
- Pruebas, validaciones y mantenimiento técnico con Vitest y Playwright
02
Problema
El consultorio necesitaba digitalizar la gestión de sus pacientes y de sus operaciones diarias en una sola herramienta.
03
Solución
Implementado
- Fichas de pacientes con antecedentes y notas
- Agenda y registro de atenciones con temporizador
- Cobros, historial y reportes
- Tarifas configurables; cada atención conserva su monto histórico
- Invitación de cuentas y recuperación de acceso
04
Arquitectura
Aplicación de una sola página con React, TypeScript y Vite, desplegada en Cloudflare. Los datos viven en PostgreSQL y la autenticación la gestiona Supabase Auth; el acceso se controla con políticas de seguridad por fila (RLS) según el rol.
- 01
Interfaz
React · TypeScript · Vite
- 02
Autenticación
Supabase Auth
- 03
Datos
PostgreSQL · RLS
05
Tecnologías
- React
- TypeScript
- JavaScript
- Vite
- PostgreSQL
- PL/pgSQL
- Supabase
- Node.js
- Vitest
- Playwright
- Cloudflare
06
Decisiones técnicas
- Roles separados: administración sin acceso clínico; recepción con acceso a cobros.
- Autorización en la base de datos con políticas RLS, no solo en la interfaz.
- Registro público deshabilitado: el acceso es por invitación.
- Cambios de esquema mediante migraciones SQL versionadas.
07
Resultados verificables
167
pruebas unitarias que pasan
Estado local del proyecto (8 de octubre de 2026)
- 167 pruebas unitarias pasan en el estado local del proyecto (8 de octubre de 2026).
- Pruebas de extremo a extremo con datos ficticios, entre ellas de seguridad y de diseño adaptable en WebKit.
08
Capturas y evidencias
Interfaz en escritorio y móvil
Abrir a tamaño completo ((se abre en una pestaña nueva))
Abrir a tamaño completo ((se abre en una pestaña nueva))Galería de pantallas
Abrir a tamaño completo ((se abre en una pestaña nueva))Inicio · Atenciones en curso con temporizador y citas de hoy.
Abrir a tamaño completo ((se abre en una pestaña nueva))Pacientes · Búsqueda por cédula, nombre o teléfono.
Abrir a tamaño completo ((se abre en una pestaña nueva))Ficha · Datos, preferencias y antecedentes del paciente.
Abrir a tamaño completo ((se abre en una pestaña nueva))Atenciones · Temporizador, avisos y lista de sesiones.
Abrir a tamaño completo ((se abre en una pestaña nueva))Agenda · Citas del día por fecha y terapeuta.
Capturas reales de la aplicación en un entorno local con una cuenta de prueba y pacientes ficticios. La interfaz muestra la marca del centro.
Documentación y pruebas
- Suite de pruebas unitarias y de extremo a extremo del repositorio.