Contenido del curso

Configuración inicial de un foro en Laravel

Resumen

Montar un foro en Laravel empieza con una configuración inicial sólida: crear el proyecto, instalar el sistema de autenticación, conectar la base de datos y dejar listo el registro de usuarios. Si estás aprendiendo desarrollo web con PHP, esta guía te muestra cada comando y decisión técnica para arrancar sin tropiezos.

¿Qué necesitas para crear un proyecto Laravel desde cero?

Antes de escribir el primer comando, ten a mano tres herramientas: Visual Studio Code como editor, un cliente de base de datos MySQL y un navegador para revisar el resultado. Con eso cubres edición, almacenamiento y visualización.

La creación del proyecto se hace desde la terminal, dentro de la carpeta donde guardas tus sitios. El comando es directo:

bash laravel new forum

Aquí forum es el nombre del proyecto. Puedes cambiarlo, pero recuerda que ese nombre lo vas a usar para entrar a la carpeta y para nombrar la base de datos más adelante [0:25].

¿Qué hace el comando laravel new? Genera la estructura completa de un proyecto Laravel con todas sus carpetas, dependencias base y archivos de configuración listos para empezar a programar.

¿Cómo instalar el sistema de autenticación en Laravel?

Un foro sin usuarios registrados no tiene sentido, así que el siguiente paso es sumar el paquete de autenticación. Entras a la carpeta del proyecto y ejecutas composer require con el nombre del componente y la opción --dev. Ese comando descarga los archivos, pero todavía no los configura [0:55].

Para la configuración corres php artisan con la opción de instalación del componente. El instalador hace varias preguntas y aquí están las decisiones que tomamos:

  • Stack frontend: Blade, opción cero, porque vamos a trabajar con plantillas tradicionales y no con React o Vue.
  • Modo dark: no, mantenemos la apariencia clara por defecto.
  • Framework de pruebas: PHPUnit por defecto, ya que no vamos a escribir tests en este proyecto.

Después de responder, el instalador descarga las dependencias restantes y deja listo el sistema de login y registro.

¿Por qué elegir Blade en vez de React o Vue?

Blade es el motor de plantillas nativo de Laravel y permite mezclar HTML con lógica de PHP de forma simple. Para un foro educativo es la opción más directa porque no exige configurar un bundler ni aprender un framework de JavaScript en paralelo.

¿Cómo conectar Laravel con una base de datos MySQL?

Con el proyecto abierto en Visual Studio Code, el siguiente bloque es la base de datos. Desde tu cliente de MySQL te conectas con usuario y contraseña, y creas una nueva base llamada forum, igual que el proyecto, para mantener la coherencia [2:30].

La conexión se configura en el archivo .env, que vive en la raíz del proyecto. Estos son los valores que debes ajustar:

  • DB_CONNECTION: mysql.
  • DB_HOST: localhost.
  • DB_DATABASE: el nombre de la base que creaste, en este caso forum.
  • DB_USERNAME: tu nombre de usuario de MySQL.
  • DB_PASSWORD: la contraseña de ese usuario.

¿Qué es el archivo .env en Laravel? Es el archivo donde guardas las variables de entorno: credenciales, claves y configuración sensible que no debe subirse al repositorio público.

¿Cómo ejecutar migraciones y crear las tablas iniciales?

Laravel ya trae definidas las migraciones para usuarios, sesiones y tokens. Para ejecutarlas abres la terminal dentro del proyecto y corres:

bash php artisan migrate

Al presionar enter se crean todas las tablas necesarias en la base forum. Si actualizas tu cliente de base de datos, ves aparecer la tabla users, que es la que va a usar el sistema de autenticación [3:30].

Con las tablas creadas, abres el navegador en la URL del proyecto. Verás dos cosas: la página inicial de Laravel y los enlaces de login y registro generados por el paquete que instalaste. Para probarlo, registras un usuario de ejemplo con nombre Italo, correo i@app.com y contraseña password. Tras confirmar, el usuario queda guardado.

¿Cómo verificar que el registro de usuarios funciona?

Después de registrarte, vuelves al cliente de base de datos, actualizas la tabla users y deberías ver tu registro con nombre, email y contraseña encriptada. Esa fila confirma que el flujo de registro de usuarios está conectado correctamente con la base de datos.

Este usuario es el cimiento del foro: en las próximas clases podrá crear preguntas, publicar respuestas y responder a otras respuestas, formando la lógica conversacional típica de una comunidad. Con la estructura inicial lista, ya puedes pasar a modelar el contenido del foro.

¿Te animas a replicar esta configuración y compartir en los comentarios qué nombre le pusiste a tu proyecto?