Skip to main content

Requisitos previos

  • Node.js >= 18
  • Python >= 3.11
  • PostgreSQL (o cuenta en Supabase)
  • Git
1

Clonar el repositorio

git clone https://github.com/tiburonz24/PsicoScanML-Sistema.git
cd PsicoScanML-Sistema
2

Configurar las variables de entorno

Crea un archivo .env en la raíz del proyecto con las siguientes variables:
DATABASE_URL="postgresql://usuario:password@host:5432/psicoscan"
NEXTAUTH_SECRET="tu-secreto-seguro"
NEXTAUTH_URL="http://localhost:3000"
ALLOWED_ORIGINS="http://localhost:3000"
VariableDescripción
DATABASE_URLCadena de conexión PostgreSQL. Para Supabase, usa la URL de conexión directa (puerto 5432).
NEXTAUTH_SECRETCadena aleatoria para firmar los tokens JWT. Genera una con openssl rand -base64 32.
NEXTAUTH_URLURL base del frontend. En producción, reemplaza con tu dominio en Vercel.
ALLOWED_ORIGINSOrígenes permitidos por la API de ML vía CORS. Separa múltiples URLs con coma.
3

Instalar dependencias del frontend

npm install
Luego genera el cliente Prisma y sincroniza el esquema con tu base de datos:
npx prisma generate
npx prisma db push
prisma db push crea todas las tablas definidas en prisma/schema.prisma sin necesidad de migraciones.
4

Iniciar el servidor de desarrollo del frontend

npm run dev
El frontend estará disponible en http://localhost:3000.
5

Instalar dependencias de la API de ML

cd ml-api
pip install -r requirements.txt
6

Iniciar la API de ML

uvicorn main:app --reload --port 8000
La API estará disponible en http://localhost:8000. Puedes verificar que está activa en http://localhost:8000/health:
{ "status": "healthy" }
7

Iniciar sesión con credenciales de prueba

Abre http://localhost:3000 en tu navegador e inicia sesión con alguna de las siguientes cuentas de prueba:
EmailContraseñaRol
[email protected]psico123PSICOLOGO
[email protected]admin123ADMIN
[email protected]dir123DIRECTOR
Después de autenticarte serás redirigido al dashboard principal en /dashboard.
Verifica que ambos servidores estén corriendo antes de usar la plataforma: el frontend en http://localhost:3000 y la API de ML en http://localhost:8000. Si la API no está disponible, la clasificación ML fallará y el sistema no podrá generar resultados de tamizaje.

Build docs developers (and LLMs) love