Skip to content

Gigisanta/NMS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

263 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NMS - Natatory Management System

Deploy with Vercel Next.js React TypeScript Prisma PostgreSQL Tailwind CSS License

Live Production: https://oroazul.maat.work


Sistema de gestión integral para natatorios y piscinas. Administra clientes, asistentes, pagos, facturación y WhatsApp en una única plataforma.

Tech Stack

Category Technology
Framework Next.js 15.5 + React 19 (App Router)
Language TypeScript 5
Database PostgreSQL via Neon (serverless)
ORM Prisma 6
Auth NextAuth v4 (Credentials + JWT)
UI shadcn/ui + Tailwind CSS 4
State Zustand + TanStack Query
Forms React Hook Form + Zod
Animation Framer Motion 12
Deployment Vercel

Features

Module Description
Dashboard Estadísticas en tiempo real, clientes recientes, pagos pendientes
CRM Clientes Perfiles completos, grupos, historial de asistencia y pagos
Asistencias Control diario con registro de entrada/salida por empleado
Pagos Suscripciones mensuales, estados de pago, recordatorios
Facturación Gestión de facturas con archivos adjuntos (almacenamiento en PostgreSQL)
WhatsApp Integración webhook para automatizaciones
Empleados Control de horario con reloj de punto
Gastos Registro de gastos del negocio
Calendario Eventos y programación de clases

Quick Start

# 1. Clonar y entrar al directorio
git clone https://github.com/Gigisanta/nms.git
cd nms

# 2. Instalar dependencias
npm install

# 3. Configurar variables de entorno
cp .env.example .env
# Editar .env con tus credenciales

# 4. Iniciar servidor de desarrollo
npm run dev

Abre http://localhost:3000 en tu navegador.

Environment Variables

Crea un archivo .env en la raíz del proyecto:

# Base de datos (Neon PostgreSQL)
DATABASE_URL="postgresql://user:password@host/database?sslmode=require"

# NextAuth
NEXTAUTH_SECRET="genera-32-caracteres-minimo"
NEXTAUTH_URL="http://localhost:3000"

Obtener credenciales

  1. Neon: https://neon.tech → New Project → copia el connection string
  2. NEXTAUTH_SECRET: Genera con openssl rand -base64 32

Scripts

# Desarrollo
npm run dev              # Servidor dev en puerto 3000
npm run lint             # Verificar código con ESLint

# Base de datos
npm run db:push          # Push schema (sin migración)
npm run db:generate      # Generar cliente Prisma
npm run db:migrate       # Crear migración (desarrollo)
npm run db:seed          # Poblar con datos de prueba

# Build
npm run build            # Build estándar Next.js
npm run build:standalone # Build standalone para Vercel
npm run start            # Iniciar producción

Usuarios de Prueba (después de seed)

Email Password Rol
mariela@nms.com mariela123 EMPLEADORA (Admin)
tomas@nms.com tomas123 EMPLEADO

Documentation

Doc Description
CLAUDE.md Guía para agentes de código
docs/ARCHITECTURE.md Arquitectura del sistema
docs/API.md Endpoints REST
docs/DATABASE.md Esquema de base de datos
docs/VERCEL.md Deployment en Vercel

Project Structure

src/
├── app/
│   ├── (auth)/           # Login, register
│   ├── api/              # API routes (serverless)
│   ├── layout.tsx        # Layout raíz
│   └── page.tsx          # SPA entry point
├── components/
│   ├── ui/               # shadcn/ui components
│   ├── modules/          # Vistas de negocio (lazy-loaded)
│   └── layout/            # Sidebar, header, etc.
├── lib/
│   ├── db.ts             # Cliente Prisma singleton
│   ├── auth.ts           # Configuración NextAuth
│   └── api-utils.ts      # Utilidades API
├── store/                # Estado Zustand
├── schemas/              # Esquemas Zod
└── types/                # Tipos TypeScript

Deployment

El proyecto está configurado para deploy automático en Vercel:

  1. Push a GitHub → Vercel detecta y despliega
  2. Build command ejecuta: npx prisma@6.11.1 migrate deploynpx prisma@6.11.1 generatenext build
  3. Production URL: https://oroazul.maat.work

Desarrollado con ❤️ para la gestión eficiente de natatorios

About

Sistema de Gestión Integral para Natatorios y Piscinas - Natatory Management System

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages