Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/eugenia1984/codo-a-codo-back-end-node

Here you can see the theory and practice of Codo a Codo course with Node
https://github.com/eugenia1984/codo-a-codo-back-end-node

ejs-express express-js express-validator javascript nodejs

Last synced: about 2 months ago
JSON representation

Here you can see the theory and practice of Codo a Codo course with Node

Awesome Lists containing this project

README

        

*ENGLISH*

# :star: Codo a codo * Back End with Node.js

Here you can see the theory and practice of Codo a Codo course with Node

---

## Please: 🎁

Share this proyect with others 📢

Invite a beer 🍺 or a coffee ☕ to someone of the team.

Thanks a lot 🤓.

---
## Notes
I appreciate your interest in this Project ⌨️ with ❤️ [María Eugenia Costa](https://github.com/eugenia1984) follow me on [LinkedIn - maria-eugenia-costa](https://www.linkedin.com/in/maria-eugenia-costa/)

---
---

*SPANISH*

Aca encontrarán la teoría y la práctica del curso en **Codo a Codo** de *Back End* con **Node.js** con el profesor Jean Paul Ferreira.

---

## Para instalar dependencias

```
npm install
```

---

## Para ejecutar el server con Express

```
npm run dev
```

---
## ¿ Qué verás ?

- [En la carpeta **proyecto**](https://github.com/eugenia1984/codo-a-codo-back-end-node/tree/main/proyecto) el **CRUD** realizado como proyecto.

- [En la carpeta **teoria**](https://github.com/eugenia1984/codo-a-codo-back-end-node/tree/main/teoria) esta todo la teoría brindada en Codo a Codo

- [En la carpeta **clases**](https://github.com/eugenia1984/codo-a-codo-back-end-node/tree/main/clases) esta el paso a paso del proyecto separado por clases:

-[En la carpeta **node01**](https://github.com/eugenia1984/codo-a-codo-back-end-node/tree/main/clases/node01) podrás ver...

... el [primer-script.js](https://github.com/eugenia1984/codo-a-codo-back-end-node/blob/main/clases/node01/primer-script.js) con Node.js, que simplemente muestra por terminal un consola.

... el [primer-servidor.js](https://github.com/eugenia1984/codo-a-codo-back-end-node/blob/main/clases/node01/primer-servidor.js) con un manejo de url, para que si tengo '/contacto' renderise *Contacto* en el naveador y si es otra url renderizara *Hola Node.js*.

... el [servidor-html.js](https://github.com/eugenia1984/codo-a-codo-back-end-node/blob/main/clases/node01/servidor-html.js) que es un servidor que renderiza un archivo HTML y hay manejo de error en el caso de que la URL se escriba mal.

... el [usuarios.js](https://github.com/eugenia1984/codo-a-codo-back-end-node/blob/mainclases//node01/usuarios.js) que es el primer modulo creado por nosotros, donde va a tener un array de nombres de los usuarios.

... la teoría asociada en el archivo [README.md](https://github.com/eugenia1984/codo-a-codo-back-end-node/blob/main/clases/node01/README.md) -> Web dinámica vs Web estática | ¿Qué es NodeJS? | Por qué usar Nodejs | Instalación de Node | Comenzando con Node | Conceptos de bloqueo | Crear comentario y manejo de módulos

-[En la carpeta **node02**](https://github.com/eugenia1984/codo-a-codo-back-end-node/tree/main/clases/node02) podras ver...

... el [hola.js](https://github.com/eugenia1984/codo-a-codo-back-end-node/blob/main/clases/node02/hola.js) con un servidor en Nodejs.

... el [hola_mundo.js](https://github.com/eugenia1984/codo-a-codo-back-end-node/blob/main/clases/node02/hola_mundo.js) con un servidor en Nodejs. que renderiza etiquetas html.

... la teoria sobre: inicializar con nmp init el package.json / modulo express y creacion del servidor / paquete nodemon / paquete dotenv / archivo .env y variables de entorno / archivo .gitignore / middlewares, static de express / params en las URL / router

-[En la carpeta **node03**](https://github.com/eugenia1984/codo-a-codo-back-end-node/tree/main/clases/node03/README.md) podras ver la teoria sobre : scripts / ejs / views y partials / layouts

-[En la carpeta **node04**](https://github.com/eugenia1984/codo-a-codo-back-end-node/tree/main/clases/node04/README.md) podras ver la teoria sobre: reordenamiento de rutas / formulario con sanitizacion de la información enviada con **express-validator**.

-[En la carpeta **node05**](https://github.com/eugenia1984/codo-a-codo-back-end-node/tree/main/clases/node05/README.md) podras ver la teoría sobre base de datos, con MySQL: crear base de datos, crear tablas, PK, FR, INSERT, SELECT, UPDATE, DELETE. JOIN entre tablas.

-[En la carpeta **node06**](https://github.com/eugenia1984/codo-a-codo-back-end-node/tree/main/clases/node06/README.md)

- [En la carpeta **script_sql**](https://github.com/eugenia1984/codo-a-codo-back-end-node/tree/main/script_sql) podes ver el script sql para crear la misma base de datos y tablas utilizadas en el proyecto.

---
## :star: Temario:

- Páginas Estáticas vs Páginas Dinámicas

- Por qué Node.

- JavaScript del lado del servidor?

- Instalación Node.

- Comprobación de la instalación

- Primeros Pasos.

- Comentarios en Node.

- Configuración de entorno de desarrollo.

- Variables

- Concatenación

- Bibliotecas de uso habitual.

- Utilizando require , Request y Response

- Return

- Mostrar HTML desde archivo

- Formularios - Métodos GET y POST

- NPM, el manejador de bibliotecas.

- NPM Init

- NPM -v

- Archivo Json de configuración de NPM

- Servidor en Node.Js

- Concepto de Servicios Web

- Consumir Web services desde JavaScript.

- require HTTP

- writeHead

- Json y stringify

- end() para el envío de cadenas en HTML

- console.log desde Node.

- Creando un servidor.

- Configuración del puerto de escucha con listen()

- Usando http.createServer()

- Visitando la web de NPM.

- Análisis de su funcionamiento y detalle de librerías activas.

- Instalando librerías a Visual Studio

- Creando un proyecto en Node con NPM

- Uso y características de Express

- Mostrar archivos por intermedio de sendfile

- Mostrando archivos con handlebars

- Definiendo el motor de vistas con Engine.

- Comparando handlebars con Jade

- .then y throw en el manejo de errores

- haciendo llamada a funciones con diferentes parámetros

- Uso de Callback en funciones Node

- Implementación de Web Services del lado del servidor con Node.

- Características de los verbos GET – PUT – POST – PATCH – DELETE

- Testeando servicios con Postman.

- ARC – Advanced Rest Client. Consumir servicios con el sistema de Google.

- Iniciando una conexión con una base de datos en un servidor externo.

- Implementando la librería Nodemon

- Implementando la conexión con body-parser y mysql

- Creando una base de datos en la nube con el servicio remote mysql.

- Ajustando el puerto de escucha de Node.Js en forma automática con process.enc.PORT

- Haciendo Routes para definir diferentes carpetas para cada servicio.

- Implementando un Crud con persistencia de datos.

- Repasando las sentencias SQL a utilizar.

- Creando un web service para: Nuevo dato y Modificar un dato

- Probando el funcionamiento desde ARC. Listar datos. Eliminar un dato. Buscar un dato

- Creando el Front End para el Crud

- Conectando el Front y el Back con JavaScript y Json

- Utilizando Multer y FormData

- Configurando los permisos de uso de CORS.

---

## Tecnologías 🛠️

**HTML**, **CSS**, **Bootstrap**, **JavaScript** , **Node.js**, **MySQL**

### Herramientas 🛠️:

-> Para la BASE DE DATOS: Laragoon y Heidi

-> Para NODE, los módulos: *express*, *nodemon*, *dotenv*, *ejs*, *express-ejs-layouts*, *express-validator*, *method-override*, *bcryptjs*, *express-session*.

---

## Por favor: 🎁

* Comparte este proyecto con otros 📢

* Invita una cerveza 🍺 o un café ☕ a alguien del equipo.

* Muchas gracias 🤓.

---

## Notas

Agradezco su interés en este Proyecto ⌨️ con ❤️ de [María Eugenia Costa](https://github.com/eugenia1984) 😊 y síganme en[LinkedIn - maria-eugenia-costa](https://www.linkedin.com/in/maria-eugenia-costa/)

---
---