Plantillas de NextJS

Tutorial de aplicación de reserva de salas de reuniones con Back4App, Next.js y Vercel

23min

En este tutorial, construirás Bookit, un sistema de reserva de salas de reuniones utilizando Next.js como el marco frontend y Back4App como el servicio backend. Implementarás la autenticación de usuarios, la gestión de salas y la funcionalidad de reservas, y desplegarás la aplicación en Vercel.

1. Requisitos previos

Para completar este tutorial, necesitarás:

2. Configuración de Back4App

  1. Inicia sesión en tu cuenta de Back4App y navega a tu panel de proyecto.
  2. En la barra lateral izquierda, haz clic en Base de datos para acceder al Navegador de Datos.
  3. Necesitarás crear las siguientes clases para modelar los datos:

2.1. Crear la Clase Usuario

  • correo electrónico: Dirección de correo electrónico para iniciar sesión
  • contraseña: Contraseña (hash)
  • nombre de usuario: Nombre de usuario opcional

2.2. Crear la Clase Sala

  1. En el Data Browser, haz clic en Crear una Clase, selecciona Personalizado, y nombra la clase Habitación.
  2. Agrega las siguientes columnas:

Nombre de la columna

Tipo

Descripción

nombre

Cadena

Nombre de la sala

descripción

Cadena

Descripción de la habitación

capacidad

Número

Número de personas que la sala puede albergar

comodidades

Arreglo

Lista de comodidades (TV, WiFi, etc.)

precio

Número

Precio por hora

imagen

Archivo

URL de la imagen

propietario

Puntero

Señala el Usuario clase

2.3. Crear la Clase de Reserva.

  1. Crear otra clase personalizada llamada Reserva.
  2. Agregar las siguientes columnas:

Nombre de la columna

Tipo

Descripción

habitación

Puntero

Apunta a la clase de habitación

usuario

Puntero

Apunta a la clase de usuario

checkIn

Fecha

Fecha/hora de inicio de la reserva

checkOut

Fecha

Fecha/hora de finalización de la reserva

3. Configuración de Next.js y Parse SDK

  1. Crea un nuevo proyecto de Next.js:
Bash

  1. Instala Parse JS SDK:
Bash

  1. En el pages/_app.js archivo, inicializa Parse con tus credenciales de Back4App:
JS


Reemplaza 'YOUR_APP_ID' y 'YOUR_JAVASCRIPT_KEY' con las credenciales de tu aplicación de Back4App.

4. Implementación de la Autenticación de Usuarios

4.1. Registro de Usuarios

Crea una nueva página pages/signup.js con un formulario de registro:

JS


4.2. Inicio de Sesión de Usuarios

Crea pages/login.js para el inicio de sesión de usuarios:

JS


4.3. Rutas protegidas

Para rutas protegidas, puedes usar las rutas API de Next.js y verificar si el usuario está autenticado:

JS


5. Gestión de habitaciones

5.1. Mostrando habitaciones disponibles

Crea pages/index.js para listar las habitaciones disponibles:

JS


5.2. Agregar una habitación

Crear pages/add-room.js para agregar nuevas habitaciones (para usuarios autorizados):

JS


5.3. Detalles de la habitación

Crear pages/rooms/[id].js para ver información detallada sobre una habitación:

JS


6. Sistema de reservas

6.1. Reservar una habitación

Agrega la funcionalidad de reserva en pages/rooms/[id].js añadiendo un formulario de reserva:

JS


6.2. Ver y cancelar reservas

Crea pages/my-bookings.js para ver y cancelar reservas:

JS


7. Desplegando en Vercel

  1. Instala el CLI de Vercel:
Bash

  1. Despliega tu aplicación Next.js con:
Bash


Sigue las indicaciones para desplegar tu aplicación en Vercel. Una vez desplegada, tu aplicación estará disponible en una URL pública.

8. Conclusión

En este tutorial, construiste una Bookit aplicación con Next.js para el frontend y Back4App como backend. Implementaste autenticación de usuarios, gestión de habitaciones y funcionalidad de reservas. Finalmente, desplegaste la aplicación en Vercel. Ahora puedes expandir la aplicación con características adicionales como búsqueda, integración de pagos o notificaciones.