{"id":19440888,"url":"https://github.com/eugenia1984/codo-a-codo-back-end-node","last_synced_at":"2025-04-14T19:21:37.036Z","repository":{"id":37616804,"uuid":"500421854","full_name":"eugenia1984/codo-a-codo-back-end-node","owner":"eugenia1984","description":"Here you can see the theory and practice of Codo a Codo course with Node","archived":false,"fork":false,"pushed_at":"2023-10-24T14:37:37.000Z","size":1185,"stargazers_count":3,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-28T07:41:33.745Z","etag":null,"topics":["ejs-express","express-js","express-validator","javascript","nodejs"],"latest_commit_sha":null,"homepage":"","language":"EJS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/eugenia1984.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-06-06T12:20:17.000Z","updated_at":"2024-02-23T22:36:28.000Z","dependencies_parsed_at":"2024-11-10T15:34:10.415Z","dependency_job_id":null,"html_url":"https://github.com/eugenia1984/codo-a-codo-back-end-node","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eugenia1984%2Fcodo-a-codo-back-end-node","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eugenia1984%2Fcodo-a-codo-back-end-node/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eugenia1984%2Fcodo-a-codo-back-end-node/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eugenia1984%2Fcodo-a-codo-back-end-node/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/eugenia1984","download_url":"https://codeload.github.com/eugenia1984/codo-a-codo-back-end-node/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248943415,"owners_count":21186958,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ejs-express","express-js","express-validator","javascript","nodejs"],"created_at":"2024-11-10T15:32:27.173Z","updated_at":"2025-04-14T19:21:37.019Z","avatar_url":"https://github.com/eugenia1984.png","language":"EJS","funding_links":[],"categories":[],"sub_categories":[],"readme":"*ENGLISH*\n\n# :star: Codo a codo * Back End with Node.js\n\nHere you can see the theory and practice of Codo a Codo course with Node\n\n---\n\n## Please: 🎁\n\nShare this proyect with others 📢\n\nInvite a beer 🍺 or a coffee ☕ to someone of the team.\n\nThanks a lot 🤓.\n\n\n---\n## Notes\nI 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/)\n\n\n---\n---\n\n\n*SPANISH*\n\nAca 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.\n\n\n\n---\n\n##  Para instalar dependencias\n\n```\nnpm install\n```\n\n---\n\n##  Para ejecutar el server con Express\n\n```\nnpm run dev\n```\n\n---\n## ¿ Qué verás ?\n\n- [En la carpeta **proyecto**](https://github.com/eugenia1984/codo-a-codo-back-end-node/tree/main/proyecto) el **CRUD** realizado como proyecto.\n\n\n- [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\n\n\n- [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:\n\n-[En la carpeta **node01**](https://github.com/eugenia1984/codo-a-codo-back-end-node/tree/main/clases/node01) podrás ver...\n\n... 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.\n\n... 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*.\n\n... 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.\n\n... 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.\n\n... 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) -\u003e 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\n\n-[En la carpeta **node02**](https://github.com/eugenia1984/codo-a-codo-back-end-node/tree/main/clases/node02) podras ver...\n\n... el [hola.js](https://github.com/eugenia1984/codo-a-codo-back-end-node/blob/main/clases/node02/hola.js) con un servidor en Nodejs.\n\n... 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.\n\n... 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\n\n-[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\n\n-[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**.\n\n-[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.\n\n-[En la carpeta **node06**](https://github.com/eugenia1984/codo-a-codo-back-end-node/tree/main/clases/node06/README.md)\n\n- [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.\n\n\n---\n## :star: Temario:\n\n\n- Páginas Estáticas vs Páginas Dinámicas\n\n- Por qué Node.\n\n- JavaScript del lado del servidor?\n\n- Instalación Node.\n\n- Comprobación de la instalación\n\n- Primeros Pasos.\n\n- Comentarios en Node.\n\n- Configuración de entorno de desarrollo.\n\n- Variables\n\n- Concatenación\n\n- Bibliotecas de uso habitual.\n\n- Utilizando require , Request y Response\n\n- Return\n\n- Mostrar HTML desde archivo\n\n- Formularios - Métodos GET y POST\n\n- NPM, el manejador de bibliotecas.\n\n- NPM Init\n\n- NPM -v\n\n- Archivo Json de configuración de NPM\n\n- Servidor en Node.Js\n\n- Concepto de Servicios Web\n\n- Consumir Web services desde JavaScript.\n\n- require HTTP\n\n- writeHead\n\n- Json y stringify\n\n- end() para el envío de cadenas en HTML\n\n- console.log desde Node.\n\n- Creando un servidor.\n\n- Configuración del puerto de escucha con listen()\n\n- Usando http.createServer()\n\n- Visitando la web de NPM.\n\n- Análisis de su funcionamiento y detalle de librerías activas.\n\n- Instalando librerías a Visual Studio\n\n- Creando un proyecto en Node con NPM\n\n- Uso y características de Express\n\n- Mostrar archivos por intermedio de sendfile\n\n- Mostrando archivos con handlebars\n\n- Definiendo el motor de vistas con Engine.\n\n- Comparando handlebars con Jade\n\n- .then y throw en el manejo de errores\n\n- haciendo llamada a funciones con diferentes parámetros\n\n- Uso de Callback en funciones Node\n\n- Implementación de Web Services del lado del servidor con Node.\n\n- Características de los verbos GET – PUT – POST – PATCH – DELETE\n\n- Testeando servicios con Postman.\n\n- ARC – Advanced Rest Client. Consumir servicios con el sistema de Google.\n\n- Iniciando una conexión con una base de datos en un servidor externo.\n\n- Implementando la librería Nodemon\n\n- Implementando la conexión con  body-parser y mysql\n\n- Creando una base de datos en la nube con el servicio remote mysql.\n\n- Ajustando el puerto de escucha de Node.Js en forma automática con process.enc.PORT\n\n- Haciendo Routes para definir diferentes carpetas para cada servicio.\n\n- Implementando un Crud con persistencia de datos.\n\n- Repasando las sentencias SQL a utilizar.\n\n- Creando un web service para: Nuevo dato y Modificar un dato\n\n- Probando el funcionamiento desde ARC. Listar datos. Eliminar un dato. Buscar un dato\n\n- Creando el Front End para el Crud\n\n- Conectando el Front y el Back con JavaScript y Json\n\n- Utilizando Multer y FormData\n\n- Configurando los permisos de uso de CORS.\n\n\n---\n\n## Tecnologías 🛠️\n\n**HTML**, **CSS**, **Bootstrap**, **JavaScript** , **Node.js**, **MySQL**\n\n### Herramientas 🛠️:\n\n-\u003e Para la BASE DE DATOS: Laragoon y Heidi\n\n-\u003e Para NODE, los módulos: *express*, *nodemon*, *dotenv*, *ejs*, *express-ejs-layouts*, *express-validator*, *method-override*, *bcryptjs*, *express-session*.\n\n---\n\n## Por favor: 🎁\n\n* Comparte este proyecto con otros 📢\n\n* Invita una cerveza 🍺 o un café ☕ a alguien del equipo.\n\n* Muchas gracias 🤓.\n\n\n---\n\n## Notas\n\nAgradezco 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/)\n\n\n---\n---\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feugenia1984%2Fcodo-a-codo-back-end-node","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feugenia1984%2Fcodo-a-codo-back-end-node","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feugenia1984%2Fcodo-a-codo-back-end-node/lists"}