Introducción

Conceptos Basicos

Node.JS, es un entorno en tiempo de ejecución multiplataforma, de código abierto, para la capa del servidor basado en el lenguaje de programación ECMAScript, asíncrono, con I/O de datos en una arquitectura orientada a eventos y basado en el motor V8 de Google.

API REST, es cualquier interfaz entre sistemas que use HTTP para obtener datos o generar operaciones sobre esos datos en todos los formatos posibles, como XML y JSON. Las operaciones más importantes relacionadas con los datos en cualquier sistema REST y la especificación HTTP son cuatro: POST (crear), GET (leer y consultar), PUT (editar) y DELETE (eliminar).

JWT, JSON Web Token (abreviado JWT) es un estándar abierto basado en JSON propuesto por IETF (RFC 7519) para la creación de tokens de acceso que permiten la propagación de identidad y privilegios.

Express.JS, Es un framework para Node.js que sirve para ayudarnos a crear aplicaciones web en menos tiempo ya que nos proporciona funcionalidades como el enrutamiento, opciones para gestionar sesiones y cookies, entre otras cosas.

Mongodb, es un sistema de base de datos NoSQL orientado a documentos de código abierto. En lugar de guardar los datos en tablas, tal y como se hace en las bases de datos relacionales, MongoDB guarda estructuras de datos BSON (una especificación similar a JSON) con un esquema dinámico, haciendo que la integración de los datos en ciertas aplicaciones sea más fácil y rápida.

Crea tu directorio de proyecto

Vamos a crear e inicializar el directorio para la aplicación. Para ello vamos a nuestra terminal y ejecutamos los siguientes comandos.

Init project
# Crear carpeta y moverme a ella
mkdir backend-js-shopping && cd backend-js-shopping

# Agregar git a nuestro proyecto
git init

Package.json

Luego de eso vamos a crear el archivo package.json, el ❤️ de nuestro proyecto.

# Crea la base ❤️ de nuestro proyecto package.json
npm init

Cuando ejecutas npm init deberas responder algunas preguntas simples, acá te dejo un ejemplo de como se ve el resultado.

Gitignore

Vamos a crear un archivo bastante util para git el cual va a indicarle a nuestro control de versiones que no tenga en cuenta algunos archivos y/o carpetas para que sean agregados-rastreados. Este archivo es .gitignore

.gitignore
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
lerna-debug.log*

# Diagnostic reports (https://nodejs.org/api/report.html)
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json

# Runtime data
pids
*.pid
*.seed
*.pid.lock

# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov

# Coverage directory used by tools like istanbul
coverage
*.lcov

# nyc test coverage
.nyc_output

# Dependency directory
# Commenting this out is preferred by some people, see
# https://www.npmjs.org/doc/misc/npm-faq.html#should-i-check-my-node_modules-folder-into-git-
node_modules

# Users Environment Variables
.env.development
.env.production

lib/
data/

# IDES
.idea
.vscode

Primer Commit

Hasta ahora solo hemos creado un directorio llamado backend-js-shopping el cual contiene un archivo package.json y un archivo oculto llamado .gitignore. Ahora es el momento de hacer nuestro primer commit, para ello ejecutamos los siguientes comandos:

# Agregar todos los archivos al commit
git add .

# Realizar el commit con un mensaje
git commit -am "Initial commit"

Repositorio: Initial commit

Last updated