Una vez tengamos node instalado en el sistema para crear un proyecto, lo primero que haremos es crear una carpeta. Una vez creada desde la terminal y dentro de la carpeta ejecutaremos el comando rpm init, el cual creara un archivo "package.json" con algunos datos del proyecto.
Se te pedirá que completes algunos detalles sobre tu proyecto, como el nombre, la descripción, el autor, etc. Puedes presionar "Enter" para aceptar los valores predeterminados o escribir tus propios valores.
Una vez que hayas completado todos los detalles, se creará un archivo llamado "package.json" en tu carpeta de proyecto. Este archivo contiene información sobre tu proyecto y las dependencias que necesita.Ya tienes un proyecto de Node.js creado y listo para comenzar a trabajar. Para iniciar un servidor de Node.js, puedes crear un archivo llamado "server.js" y escribir el siguiente código:
y ejecutamos el projecto desde la terminal con node server.js. Una vez ejecutado, si abrimos el navegador y ponemos la url de localhost:3000 podemos comprobar como el server esta en funcionamiento.
Al usar node.js podemos usar muy diferentes módulos. Muchos de ellos con funciones parecidas. Por lo que aquí explicados no tienen que ser tú opción final.
Los módulos pueden dividirse en dos tipos, lo de producción, siendo los necesarios para el funcionamiento de la página y los de desarrollo, que usaremos solo para la creación del código. Estos últimos, cuando se despliegue la aplicación no se incluiran en el servidor de producción.
Para instalar cualquier modulo usaremos la herramienta npm i nombre(s) modulo(s)
En nuestro caso instalaremos los siguientes módulos:
Gracias a las funciones proporcionadas por el módulo express para construir tu aplicación web, uedes usar la función app.get() para manejar solicitudes HTTP GET, o la función app.post() para manejar solicitudes HTTP POST.
EJS (JavaScript Incorporado) es un lenguaje de plantillas que te permite generar HTML, XML u otros formatos de texto usando JavaScript. Se utiliza a menudo en aplicaciones de Node.js para construir el renderizado del lado del servidor de páginas web.
El módulo ejs es un módulo de Node.js que proporciona soporte para usar plantillas EJS en tu aplicación. Te permite definir tus vistas mediante plantillas EJS y luego renderizarlas con los datos que le pasas.
Puedes usar módulo ejs para renderizar plantillas EJS y enviar la salida al cliente. Por ejemplo, puedes usar la función ejs.renderFile() para renderizar un archivo de plantilla EJS y enviar la salida al cliente como una respuesta HTTP.
Tambien puedes renderizar esta plantilla y enviar la salida al cliente de esta manera:
Esto renderizará el archivo template.ejs con los datos que proporcionaste ({ message: 'Hello World!' }) y enviará la salida al cliente como una respuesta HTTP.
Morgan es un middleware que registra las solicitudes HTTP en Node.js. Está diseñado para registrar las solicitudes al servidor en un formato estándar, lo que facilita ver lo que está sucediendo en el servidor.
El módulo morgan es un middleware popular para registrar solicitudes HTTP en Node.js. Proporciona una forma sencilla de registrar las solicitudes al servidor, incluyendo el método de solicitud, la URL, el estado de la respuesta y el tiempo de respuesta.
Estos serian los módulos que usaremos en la aplicación en la parte de producción, para instalarlos ejecutariamos:
Como módulo de desarrollo instalaremos además nodemon
Nodemon es una herramienta que se ejecuta en segundo plano y observa cualquier cambio en tus archivos de Node.js. Si detecta algún cambio, reinicia automáticamente tu servidor de Node.js para que puedas ver los cambios en tiempo real mientras desarrollas tu aplicación.
Vamos a incluir este nuevo módulo en el proyecto, pero en este caso lo haremos con npm i nodemo -D, podemos ver como hemos añadido la opcón -D, lo cual indica que es un módulo de desarrollo.
Despues de instalar los módulos indicados, si observamos el archivo "package.json" podemos ver como ha incluido las dependencias a los módulos indicados.