Configura el linter ESLint y DEPLOY de tu API con Heroku 🚀 - Bootcamp FullStack JavaScript Gratuito

Configura el linter ESLint y DEPLOY de tu API con Heroku 🚀 - Bootcamp FullStack JavaScript Gratuito

Importancia de las herramientas de linting en el desarrollo de código

Resumen de la sección: En esta sección, se destaca la importancia de utilizar herramientas de linting para evitar errores y mantener un estilo consistente en el código. Se menciona que una herramienta comúnmente utilizada es ESLint para JavaScript.

Herramientas de linting y su utilidad

  • Las herramientas de linting como ESLint ayudan a detectar y señalar errores en el código.
  • Además de los errores, también pueden proporcionar información sobre el estilo del código, como la cantidad de espacios requeridos o si se deben utilizar comillas simples o dobles.
  • El uso del linting ayuda a mantener un estilo consistente en todo el proyecto.

Instalación y configuración del linter

  • Se recomienda instalar ESLint como dependencia de desarrollo en todos los proyectos.
  • La instalación se puede realizar a través del comando npm install eslint --save-dev.
  • Después de la instalación, se puede inicializar la configuración ejecutando el comando npx eslint --init, que guiará al usuario a través del proceso de configuración.
  • Durante la configuración, se pueden especificar diferentes opciones según las preferencias del desarrollador, como los módulos utilizados en el proyecto y las reglas específicas para el estilo del código.

Uso del linter en el editor y desde la línea de comandos

  • Una vez configurado, ESLint puede mostrar errores directamente en el editor mientras se escribe código.
  • También es posible ejecutar ESLint desde la línea de comandos utilizando el comando npx eslint <archivo> para verificar todo un archivo o directorio.

Configuración adicional y personalización

  • ESLint ofrece una amplia gama de configuraciones adicionales que se pueden ajustar según las necesidades del proyecto.
  • Estas configuraciones se pueden modificar en el archivo .eslintrc para adaptarse a las preferencias del desarrollador.

Configuración avanzada y uso de extensiones

Resumen de la sección: En esta sección, se explora la configuración avanzada de ESLint y cómo utilizar extensiones para mejorar la experiencia de desarrollo.

Configuración personalizada con ESLint

  • Se puede acceder a la configuración personalizada de ESLint a través del archivo .eslintrc.
  • Dentro de este archivo, es posible ajustar diferentes aspectos, como las acciones realizadas al guardar un archivo o la frecuencia con la que se muestran los errores.

Uso de extensiones para mejorar el linting

  • Existen extensiones adicionales que se pueden utilizar junto con ESLint para mejorar aún más la experiencia de linting.
  • Una extensión recomendada es "Error Lens", que muestra los errores directamente en línea dentro del editor.
  • Para instalar esta extensión, se debe buscar en el marketplace del editor y seguir las instrucciones correspondientes.

Ejecución y corrección automática del linter

Resumen de la sección: En esta sección, se explica cómo ejecutar el linter desde el proyecto y cómo corregir automáticamente algunos errores comunes.

Ejecución del linter desde el proyecto

  • Para ejecutar el linter desde el proyecto, es necesario agregar un script en el archivo package.json.
  • Este script puede tener un nombre personalizado y ejecutar el comando eslint <directorio> para verificar todo un directorio o archivo.

Corrección automática de errores comunes

  • Algunos errores comunes, como los espacios irregulares, se pueden corregir automáticamente utilizando la opción --fix al ejecutar el linter.
  • Por ejemplo, el comando eslint --fix <archivo> intentará corregir automáticamente los errores en el archivo especificado.

Conclusiones finales

Resumen de la sección: En esta sección final, se resalta la importancia del linting en el desarrollo de código y cómo utilizar herramientas como ESLint puede mejorar la calidad y consistencia del código.

Importancia del linting en el desarrollo de código

  • El uso de herramientas de linting como ESLint es fundamental para evitar errores y mantener un estilo consistente en el código.
  • El linting ayuda a detectar problemas sintácticos y estilísticos antes de que se conviertan en problemas más graves.
  • Además, utilizar extensiones y configuraciones personalizadas puede mejorar aún más la experiencia de desarrollo.

Beneficios del uso de herramientas de linting

  • Detecta y señala errores en el código.
  • Ayuda a mantener un estilo consistente en todo el proyecto.
  • Mejora la calidad y legibilidad del código.
  • Permite corregir automáticamente algunos errores comunes.

Configuración de Estándar

Resumen de la sección: En esta sección, el hablante menciona que utiliza una configuración llamada "Estándar" para sus proyectos en JavaScript. Esta configuración viene con reglas preestablecidas y está basada en no utilizar puntos y comas ni colores en JavaScript. El hablante explica que esta configuración resuelve muchos problemas y recomienda su uso.

  • La configuración utilizada por el hablante se llama "Estándar".
  • Esta configuración viene con reglas preestablecidas.
  • Está basada en no utilizar puntos y comas ni colores en JavaScript.
  • Recomienda utilizar la configuración "Estándar" debido a sus ventajas.

Middleware Web

Resumen de la sección: En esta sección, el hablante explica qué es un middleware web y cómo se utiliza. Menciona que ya están utilizando middlewares como morgan y cors. También muestra un ejemplo de cómo crear un middleware personalizado utilizando una función que intercepta las peticiones HTTP.

  • Un middleware web es una función que intercepta las peticiones HTTP.
  • Ya están utilizando middlewares como morgan y cors.
  • Se puede crear un middleware personalizado utilizando una función que recibe los parámetros request, response y next.
  • El parámetro next permite pasar la petición al siguiente middleware o ruta.
  • El orden de ejecución de los middlewares depende del orden en el código.

Uso del método next

Resumen de la sección: En esta sección, el hablante explica cómo utilizar el método next en un middleware para pasar la petición al siguiente middleware o ruta. Muestra un ejemplo de cómo agregar el método next en un middleware y menciona que es importante utilizarlo para que la petición continúe su flujo.

  • El método next se utiliza en un middleware para pasar la petición al siguiente middleware o ruta.
  • Es importante utilizar el método next para que la petición continúe su flujo.
  • Si no se utiliza el método next, la petición puede quedar bloqueada en ese punto del código.

Respuesta del Servidor

Resumen de la sección: En esta sección, el hablante explica cómo funciona la respuesta del servidor en Node.js. Menciona que si se envía una respuesta utilizando res.json(), el servidor enviará esa respuesta y no continuará con las siguientes rutas o middlewares. Destaca la importancia de utilizar correctamente el método next para asegurar que las rutas y middlewares posteriores sean ejecutados.

  • Si se envía una respuesta utilizando res.json(), el servidor enviará esa respuesta y no continuará con las siguientes rutas o middlewares.
  • Es importante utilizar correctamente el método next para asegurar que las rutas y middlewares posteriores sean ejecutados.
  • La correcta utilización del método next evita que el servidor quede bloqueado sin responder.

Control de errores y manejo de rutas

Resumen de la sección: En esta sección, el orador habla sobre cómo controlar los errores y manejar las rutas en una aplicación. Explica cómo utilizar el código 404 para indicar que una ruta no existe y muestra cómo implementar un middleware para registrar los errores.

Controlando errores con el código 404

  • Se puede utilizar el código de estado 404 para indicar que una ruta no existe.
  • Al enviar una respuesta con el status 404, se puede proporcionar información adicional sobre el error.

Implementación del middleware de registro de errores

  • Es posible crear un módulo aparte para implementar un middleware de registro de errores.
  • El middleware puede ser exportado como un módulo y luego importado en la aplicación principal.
  • El middleware registra los errores y puede enviarlos a una base de datos u otro destino.

Creación del módulo logger

Resumen de la sección: En esta sección, se explica cómo crear un módulo llamado "logger" para registrar eventos o mensajes en la aplicación. Este módulo puede ser utilizado para diversos propósitos, como el registro de archivos o la gestión de malwares.

Creación del módulo logger

  • Se crea un archivo separado llamado "logger.js" donde se define la lógica del módulo.
  • El módulo logger puede tener diversas utilidades, como el registro de archivos o la gestión de malwares.
  • Para exportar el módulo, se utiliza module.exports.

Preparación e integración con una aplicación React existente

Resumen de la sección: En esta sección, el orador muestra cómo integrar una aplicación React existente con la API desarrollada anteriormente. Se clona un repositorio y se instalan las dependencias necesarias.

Integración con una aplicación React existente

  • Se clona un repositorio que contiene una aplicación de notas desarrollada en clases anteriores.
  • Se instalan las dependencias necesarias para la aplicación.
  • La aplicación puede ser ejecutada utilizando el comando npm start.

Solución a problemas de CORS

Resumen de la sección: En esta sección, se aborda el problema de CORS (Cross-Origin Resource Sharing) al realizar peticiones entre diferentes orígenes. El orador explica qué es CORS y cómo solucionarlo.

Problema de CORS al realizar peticiones entre diferentes orígenes

  • Cuando se realizan peticiones entre diferentes orígenes, como en este caso donde la API está en el puerto 3001 y la aplicación en el puerto 3000, puede ocurrir un error de CORS.
  • El error de CORS puede ser solucionado configurando adecuadamente los encabezados HTTP o utilizando herramientas como "cors" en Node.js.

Compartir recursos entre diferentes dominios

Resumen de la sección: En esta sección, el orador explica cómo compartir recursos entre diferentes dominios y aborda el concepto de Cross-Origin Resource Sharing (CORS). Menciona que normalmente no hay problemas al compartir recursos como imágenes, pero sí pueden surgir problemas al compartir recursos dinámicos como JavaScript.

Compartir recursos entre diferentes dominios

  • Normalmente no hay problemas al compartir recursos estáticos como imágenes entre diferentes dominios.
  • Sin embargo, pueden surgir problemas al compartir recursos dinámicos como JavaScript.
  • El concepto de Cross-Origin Resource Sharing (CORS) se refiere a la forma en que los navegadores permiten o restringen el acceso a recursos entre diferentes dominios.

Acceso al backend y solución fácil

Resumen de la sección: En esta sección se habla sobre cómo solucionar el acceso al backend y se menciona una posible solución utilizando un proxy.

  • Para tener acceso al backend, es necesario realizar diferentes acciones, como configurar un proxy.
  • En este caso, la solución es sencilla ya que se tiene acceso al backend y se puede arreglar directamente en él.
  • Se menciona que en el backend se puede especificar qué orígenes pueden acceder a los recursos.
  • Cuando se crea una aplicación abierta a todo el mundo, normalmente se desea permitir que cualquier origen utilice la aplicación.

Uso del middleware "cors"

Resumen de la sección: Se introduce el middleware "cors" para controlar los orígenes que pueden acceder a la aplicación.

  • Se menciona el módulo "cors" en Express, que permite controlar los orígenes que pueden acceder a los recursos de la aplicación.
  • El módulo "cors" es una dependencia de producción y puede ser requerido en el código.
  • Al utilizar "cors", es posible configurar qué orígenes son permitidos para acceder a la aplicación.
  • Por defecto, cualquier origen puede acceder a la aplicación cuando se utiliza "cors".
  • Se recomienda guardar los cambios después de configurar las opciones deseadas con "cors".

Configuración del middleware "cors"

Resumen de la sección: Se explica cómo configurar el middleware "cors" para permitir cualquier origen o especificar orígenes específicos.

  • Se menciona que se puede configurar "cors" para permitir cualquier origen utilizando el asterisco (*).
  • También se menciona que es posible cargar orígenes dinámicamente, por ejemplo, obteniendo los orígenes desde una base de datos.
  • Se destaca que existen mejores formas de controlar el acceso a la aplicación, como utilizar tokens de autenticación en lugar de depender únicamente del origen.

Uso de "cors" como middleware

Resumen de la sección: Se explica cómo utilizar "cors" como middleware en rutas específicas.

  • Se menciona que "cors" también se puede utilizar a nivel de cada ruta o endpoint.
  • Esto permite controlar los orígenes permitidos para acceder a rutas específicas.
  • Se muestra un ejemplo donde se utiliza "cors" como middleware para una ruta específica llamada "/save".

Despliegue del backend y uso de Europa

Resumen de la sección: Se habla sobre el despliegue del backend y se menciona la plataforma Europa para hospedar servicios en la nube.

  • Se comenta sobre el despliegue del backend en Europa, una plataforma gratuita para hospedar servicios en la nube.
  • La plataforma Europa ofrece hospedaje gratuito para proyectos pequeños y cobra cuando el proyecto crece.
  • Se sugiere crear un repositorio en GitHub y seguir las instrucciones proporcionadas allí.

Creación del repositorio y configuración inicial

Resumen de la sección: Se explica cómo crear un repositorio y realizar la configuración inicial antes del despliegue.

  • Se menciona la creación de un repositorio en GitHub con el nombre "notes-up-backend".
  • Se indica que se debe crear un archivo ".gitignore" para ignorar los archivos de notebook.
  • Se muestra cómo inicializar el repositorio y realizar el primer commit.

Configuración del archivo .gitignore

Resumen de la sección: Se explica cómo configurar el archivo .gitignore para evitar subir archivos no deseados al repositorio.

  • Se menciona la importancia de configurar correctamente el archivo .gitignore.
  • Se muestra cómo agregar una línea al archivo .gitignore para ignorar los archivos de notebook.

The transcript provided does not have any more meaningful sections.

Cambio de nombre de la rama principal a "main"

Resumen de la sección: En esta parte del video, se explica cómo cambiar el nombre de la rama principal (master) a "main" en un repositorio. Esto se hace para utilizar un lenguaje más inclusivo y evitar términos con connotaciones negativas.

Cambio de nombre de la rama principal

  • Se cambia el nombre de la rama principal (master) a "main" en el repositorio.
  • Se añade el origen remoto donde se guardará la información antes de empujarla.
  • Se realiza un push en la nueva rama "main" del origen remoto.

Configuración inicial del servicio web

Resumen de la sección: En esta parte del video, se muestra cómo configurar un servicio web utilizando una aplicación en Europa.

Configuración inicial del servicio web

  • Se realiza un cambio en el archivo "profile" para indicar qué tipo de recurso se desea desplegar, en este caso, un servicio web.
  • Se ejecuta el comando npm start para inicializar el servicio web.
  • Se instala ClickUp Hero para crear una aplicación en Europa.
  • Dependiendo del sistema operativo utilizado (macOS, Windows o Ubuntu), se siguen los pasos correspondientes para crear una cuenta y desplegar la aplicación.

Configuración del puerto para el servicio web

Resumen de la sección: En esta parte del video, se explica cómo configurar el puerto utilizado por el servicio web.

Configuración del puerto para el servicio web

  • Se realiza un cambio en el código para especificar el puerto que se desea utilizar.
  • El puerto se obtiene de una variable de entorno llamada "port".
  • Si la variable de entorno no está definida, se utiliza el puerto 3000 como valor predeterminado.
  • Es importante tener en cuenta esta configuración al desplegar la aplicación.

Creación y despliegue de la aplicación en Europa

Resumen de la sección: En esta parte del video, se muestra cómo crear y desplegar una aplicación en Europa utilizando EuroQ.

Creación y despliegue de la aplicación en Europa

  • Se crea una aplicación utilizando el comando euro q create.
  • Se verifica que los cambios realizados estén presentes en la rama principal.
  • Se realiza un push para enviar los cambios al origen remoto.
  • La aplicación es desplegada y se muestran las variables utilizadas y los binarios instalados.

Verificación del funcionamiento de la aplicación

Resumen de la sección: En esta parte del video, se verifica si la aplicación funciona correctamente después del despliegue.

Verificación del funcionamiento de la aplicación

  • Se accede a través de diferentes URLs para comprobar si la aplicación responde correctamente.
  • Se comprueba que las notas sean accesibles a través de una URL específica.
  • Se observa que los pasos anteriores han sido exitosos y que la aplicación está funcionando correctamente.

Aplicaciones de notas

Resumen de la sección: En esta sección, se muestra cómo guardar una nota en una aplicación de notas y cómo acceder a esas notas desde un servidor. También se menciona la posibilidad de desplegar el front-end de la aplicación.

Guardar y acceder a notas

  • Se muestra cómo guardar una nota en una aplicación de notas.
  • Se menciona que las notas guardadas pueden ser accesibles desde un servidor.
  • Se destaca que las notas creadas desde el servidor también pueden ser visualizadas.

Despliegue del front-end

  • Se menciona que el despliegue del front-end también es importante.
  • Se indica que aún hay más cosas por hacer en relación al front-end.
  • Se anuncia que en la próxima clase se verá cómo desplegar el front-end y cómo utilizar MongoDB para persistencia de datos.

Despliegue completo y próximos pasos

Resumen de la sección: En esta sección, se destaca que el back-end ha sido completamente desplegado y ahora es necesario trabajar en el front-end. También se mencionan los próximos pasos a seguir.

Despliegue completo del back-end

  • Se enfatiza que el back-end ha sido completamente desplegado.
  • Se resalta que la API está disponible públicamente para su uso gratuito.

Trabajo pendiente en el front-end

  • Se menciona que aún falta trabajar en el front-end de la aplicación.
  • Se anuncia que en la próxima clase se abordará el despliegue del front-end y la persistencia de datos con MongoDB.

Generación del archivo PRD y configuración de puerto

Resumen de la sección: En esta sección, se explica cómo generar el archivo PRD manualmente y cómo configurar el puerto para levantar el servicio web.

Generación del archivo PRD

  • Se menciona que se ha generado manualmente el archivo PRD.
  • Se indica que es importante especificar que es un servicio web en el archivo PRD.

Configuración del puerto

  • Se explica que es necesario asignar un puerto al servicio web.
  • Se menciona que al asignar un puerto, automáticamente se crea un proxy para redirigir las solicitudes a ese puerto.

Despliegue con Aero Q y Vercel

Resumen de la sección: En esta sección, se mencionan alternativas para el despliegue de la aplicación utilizando Aero Q y Vercel. También se destaca la importancia de subir los cambios en la rama correcta antes de realizar el despliegue.

Despliegue con Aero Q

  • Se menciona que Aero Q es una alternativa interesante para el despliegue.
  • Se indica que es necesario tener los cambios subidos en la rama correspondiente antes de realizar el despliegue.

Despliegue con Vercel

  • Se menciona que Vercel también es una opción para el despliegue.
  • Se destaca que este tipo de servicios requiere cierta configuración adicional.

Uso de Jenkins y GitHub Actions

Resumen de la sección: En esta sección, se habla sobre Jenkins como herramienta para la integración continua y se menciona que GitHub Actions puede ser una alternativa. También se destaca que en el próximo bootcamp se verá cómo utilizar GitHub Actions.

Uso de Jenkins

  • Se explica que Jenkins es una herramienta para la integración continua.
  • Se menciona que Jenkins puede utilizarse para desplegar con Aero Q.

Alternativa: GitHub Actions

  • Se menciona que GitHub Actions puede ser una alternativa a Jenkins.
  • Se anuncia que en el próximo bootcamp se verá cómo utilizar GitHub Actions como herramienta similar a Jenkins.

Conclusión y agradecimientos

Resumen de la sección: En esta sección, se concluye el video y se agradecen los suscriptores y donaciones recibidas durante la transmisión.

  • El instructor agradece a los suscriptores y donantes durante la transmisión.
  • Se destaca la cantidad de conceptos importantes presentados en el video.
  • Se menciona que las clases pueden revisarse en YouTube tantas veces como sea necesario.

Explicación de la magia del comando "git remote add"

Resumen de la sección: En esta sección, el instructor explica cómo funciona el comando "git remote add" y su importancia en la creación de repositorios remotos. También menciona que es una parte fundamental pero a menudo mal entendida por muchas personas.

Cómo funciona el comando "git remote add"

  • El comando "git remote add" crea o añade un repositorio remoto en el repositorio local.
  • Al hacer esto, se puede apuntar al repositorio remoto desde el repositorio local y realizar acciones como hacer push o pull.
  • Es importante entender que este comando crea un enlace entre los dos repositorios, permitiendo la comunicación entre ellos.

Opciones para crear un repositorio remoto

  • Se puede crear un repositorio remoto desde la página web de GitHub u otras plataformas similares.
  • Sin embargo, el instructor recomienda utilizar el comando en la terminal para tener más control sobre las opciones y configuraciones.

Otras formas de desplegar aplicaciones

  • Además de GitHub, existen otras plataformas recomendadas para desplegar aplicaciones como Digital Ocean y Heroku.
  • También menciona una plataforma llamada Netlify que está ganando popularidad y ofrece características interesantes.

Recomendaciones adicionales para despliegue

Resumen de la sección: En esta sección, el instructor comparte algunas recomendaciones adicionales para desplegar aplicaciones y servicios.

Otras plataformas recomendadas

  • Además de las mencionadas anteriormente, también recomienda vercel.com como otra opción para desplegar microservicios backend.
  • Menciona que cada plataforma tiene sus ventajas y desventajas, por lo que es importante evaluar cuál se adapta mejor a las necesidades del proyecto.

Escalabilidad y precio

  • El instructor destaca la importancia de considerar la escalabilidad y el precio al elegir una plataforma de despliegue.
  • Personalmente, menciona que ha tenido una buena experiencia con Vercel en términos de escalabilidad y precio, pagando $20 al mes por sus proyectos.

Persistencia de notas en el servicio

Resumen de la sección: En esta sección, el instructor explica cómo funciona la persistencia de las notas en el servicio y cómo pueden ser guardadas incluso después de borrarlas.

Persistencia de notas

  • Las notas creadas en el servicio quedarán guardadas mientras el servicio esté levantado.
  • Incluso si se borran todas las notas, seguirán siendo persistentes mientras el servicio esté activo.

Importancia de la persistencia

  • El instructor menciona que aunque lo hecho hasta ahora no está bien implementado debido a tener solo una máquina, en un entorno real con múltiples máquinas se necesita algo más para lograr persistencia.
  • Se requiere una base de datos u otro mecanismo para garantizar la persistencia adecuada en un entorno escalable.

Conclusiones finales y recomendaciones adicionales

Resumen de la sección: En esta última sección, el instructor ofrece algunas conclusiones finales sobre el tema del despliegue y comparte algunas recomendaciones adicionales.

Escalabilidad y precio nuevamente

  • El instructor reitera la importancia de considerar tanto la escalabilidad como el precio al elegir una plataforma de despliegue.
  • Menciona que ha tenido una buena experiencia con Vercel en términos de escalabilidad y precio.

Revisión del contenido

  • El instructor menciona que ha intentado cubrir el contenido de la aplicación lo más rápido posible, pero sin dejar atrás aspectos importantes.
  • Reconoce que puede haber cosas que no se explicaron en detalle, pero invita a revisar el contenido completo para obtener una comprensión más completa.

Futuros podcasts

  • El instructor menciona que planea hacer podcasts en el futuro, aunque no especifica cuándo comenzará a hacerlos.

¿Cuántas notas tendrás en una semana?

Resumen de la sección: En esta sección, se discute la posibilidad de tener un número determinado de notas en una semana y cómo esto puede ser beneficioso. También se menciona la opción de utilizar "Fire Ves" para reiniciar las notas, pero no se profundiza en ello.

Posibilidad de tener un número determinado de notas

  • Puede ser útil saber cuántas notas tendrás en una semana.
  • La opción de reiniciar las notas con "Fire Ves" es mencionada pero no explorada.

Iniciativa para ver los vídeos perdidos

Resumen de la sección: En esta sección, el hablante agradece a alguien por su iniciativa y comenta sobre la posibilidad de ver los vídeos perdidos. También menciona que tiene una aplicación donde puede plegar aerobús sin problemas.

Ver los vídeos perdidos

  • Se agradece a alguien por su iniciativa para ver los vídeos perdidos.
  • El hablante comenta que tiene una aplicación donde puede plegar aerobús sin problemas.

Costos asociados al contenido gratuito

Resumen de la sección: En esta sección, el hablante menciona los costos asociados al contenido gratuito. Habla sobre el costo actual que está pagando y menciona algunos gastos adicionales relacionados con analítica y Ever Shell.

Costos asociados al contenido gratuito

  • El hablante está pagando actualmente 28 dólares.
  • Además del costo principal, hay gastos adicionales como analítica y Ever Shell.

Sacar tiempo para hacer todo el contenido

Resumen de la sección: En esta sección, el hablante responde a una pregunta sobre cómo saca tiempo para hacer todo el contenido. Menciona que actualmente tiene más tiempo debido al confinamiento y que considera esto como un hobby.

Sacar tiempo para hacer contenido

  • El hablante menciona que actualmente tiene más tiempo debido al confinamiento.
  • Hacer contenido es considerado como un hobby por el hablante.

Motivación para hacer contenido gratuito

Resumen de la sección: En esta sección, el hablante explica su motivación para hacer contenido gratuito. Menciona que le gusta mucho y lo disfruta, además de tener el apoyo de su pareja.

Motivación para hacer contenido gratuito

  • El hablante menciona que le gusta mucho y disfruta haciendo contenido.
  • Agradece el apoyo de su pareja en este aspecto.

Planes futuros y agradecimientos a suscriptores

Resumen de la sección: En esta sección, el hablante comenta sobre los planes futuros, incluyendo aprender MongoDB y terminar con el despliegue del front-end. También agradece a sus suscriptores por su apoyo.

Planes futuros y agradecimientos

  • Los planes futuros incluyen aprender MongoDB y terminar con el despliegue del front-end.
  • Se agradece a los 324 suscriptores por su apoyo.

Opiniones sobre contenido gratuito

Resumen de la sección: En esta sección, el hablante menciona las opiniones que ha recibido sobre su contenido gratuito. Algunas personas aprecian y agradecen el contenido, mientras que otras consideran que es competencia desleal y perjudicial para los negocios.

Opiniones sobre contenido gratuito

  • Algunas personas aprecian y agradecen el contenido gratuito.
  • Otras personas consideran que es competencia desleal y perjudicial para los negocios.

Aportar una forma diferente de acercar la programación

Resumen de la sección: En esta sección, el hablante comenta sobre cómo está apostando por una forma diferente de acercar la programación a través de su contenido gratuito. Menciona que espera poder cambiar la vida de las personas con su trabajo.

Aportar una forma diferente de acercar la programación

  • El hablante está apostando por una forma más accesible y económica de aprender programación.
  • Espera poder cambiar la vida de las personas con su trabajo.

Apreciación del apoyo recibido

Resumen de la sección: En esta sección, el hablante expresa su gratitud por el apoyo recibido. Comenta que le alegra saber que hay muchas personas que valoran su trabajo y lo encuentran útil.

Apreciación del apoyo recibido

  • El hablante expresa gratitud por el apoyo recibido.
  • Se alegra al saber que hay muchas personas que valoran su trabajo.

Agradecimiento y cierre de la clase

Resumen de la sección: En esta sección, el instructor agradece a los espectadores por su apoyo y cariño en el chat. Menciona que están en Discord, donde son más de 2000 miembros en la comunidad y se han añadido nuevas funcionalidades como un ranking. Invita a seguir aprendiendo y comentando sobre desarrollo web y programación en Discord.

Cierre de la clase

  • El instructor agradece a todos por acompañarlo durante la clase.
  • Espera que los espectadores hayan aprendido algo nuevo.
  • Invita a unirse al servidor de Discord para seguir conversando sobre desarrollo web y programación.
  • Anuncia que mañana habrá una nueva sesión llamada "Script Weekly" donde se repasarán novedades de JavaScript, librerías y artículos relacionados.

Continuación del aprendizaje en Discord

Resumen de la sección: El instructor invita nuevamente a unirse al servidor de Discord para continuar aprendiendo y discutiendo temas relacionados con desarrollo web y programación. Menciona que mañana habrá una sesión llamada "Script Weekly" donde se revisarán novedades e interactuarán con los participantes.

Continuación del aprendizaje en Discord

  • Se anima a los espectadores a seguir aprendiendo y compartiendo conocimientos en el servidor de Discord.
  • Se menciona el comando para acceder al servidor ("dischord").
  • Anuncio sobre la sesión "Script Weekly" que tendrá lugar mañana, donde se revisarán novedades de JavaScript, librerías y artículos relacionados.

Agradecimiento final y despedida

Resumen de la sección: El instructor agradece nuevamente a todos los espectadores por haber pasado por la clase y acompañarlo. Expresa su esperanza de que hayan aprendido algo nuevo y que les haya ayudado a mejorar en su desarrollo web y programación.

Agradecimiento final y despedida

  • El instructor agradece nuevamente a todos los espectadores por haber estado presentes durante la clase.
  • Expresa su esperanza de que los espectadores hayan aprendido algo nuevo.
  • Menciona que espera haberles ayudado a mejorar en su desarrollo web y programación.
  • Se despide cordialmente.

Turn any video into a summary like this

YouTube links, meetings, lectures. With transcripts, search, and chat.

Video description

Configuramos el linter en nuestro proyecto con ESLint y Standard. Después hacemos el deploy de nuestra API con Heroku, de forma totalmente gratuita. Suscríbete al canal 🔔 ► https://www.youtube.com/c/midudev?sub_confirmation=1 🔗 Links: ESLint: https://eslint.org/ Linter StandardJS: https://standardjs.com/ Heroku: https://dashboard.heroku.com/login 📹 Segmentos: 00:00 - Instalando y configurando ESLint 08:30 - Middlewares en Express 18:00 - Problemas de CORS 25:05 - Creando un repositorio en GIT 29:06 - Instalando Heroku CLI 31:15 - Creando aplicación de Heroku 33:00 - Deploy con Heroku 37:30 - Preguntas y respuestas de la clase Clase basada en el FullStack Open: https://fullstackopen.com/es/