CursosEmpresasBlogLiveConfPrecios

Gestión de paquetes: NPM y package.json

Clase 20 de 31 • Curso de Fundamentos de Node.js

Clase anteriorSiguiente clase

Contenido del curso

Conocer los conceptos básicos de NodeJS

  • 1

    Instalación de Node.js

    00:53 min
  • 2
    Node: orígenes y filosofía

    Node: orígenes y filosofía

    04:40 min
  • 3
    EventLoop: asíncrona por diseño

    EventLoop: asíncrona por diseño

    04:38 min
  • 4
    Monohilo: implicaciones en diseño y seguridad

    Monohilo: implicaciones en diseño y seguridad

    09:41 min
  • 5
    Configurar las variables de entorno en Node.js

    Configurar las variables de entorno en Node.js

    07:22 min
  • 6
    Herramientas para ser más felices: Nodemon y PM2

    Herramientas para ser más felices: Nodemon y PM2

    09:55 min

Cómo manejar la asincronía

  • 7
    Callbacks

    Callbacks

    10:11 min
  • 8
    Callback Hell: refactorizar o sufrir

    Callback Hell: refactorizar o sufrir

    11:37 min
  • 9
    Promesas

    Promesas

    10:01 min
  • 10
    Async/await

    Async/await

    08:34 min

Entender los módulos del core

  • 11
    Globals

    Globals

    10:11 min
  • 12
    File system

    File system

    10:48 min
  • 13
    Console

    Console

    10:34 min
  • 14
    Errores (try / catch)

    Errores (try / catch)

    10:08 min
  • 15
    Procesos hijo

    Procesos hijo

    10:03 min
  • 16
    Módulos nativos en C++

    Módulos nativos en C++

    09:32 min
  • 17
    HTTP

    HTTP

    09:40 min
  • 18
    OS

    OS

    09:45 min
  • 19
    Process

    Process

    09:36 min

Utilizar los módulos y paquetes externos

  • 20
    Gestión de paquetes: NPM y package.json

    Gestión de paquetes: NPM y package.json

    Viendo ahora
  • 21
    Construyendo módulos: Require e Import

    Construyendo módulos: Require e Import

    09:46 min
  • 22
    Módulos útiles

    Módulos útiles

    12:35 min
  • 23
    Datos almacenados vs en memoria

    Datos almacenados vs en memoria

    03:39 min
  • 24
    Buffers

    Buffers

    07:47 min
  • 25
    Streams

    Streams

    11:50 min

Conocer trucos que no quieren que sepas

  • 26
    Benchmarking (console time y timeEnd)

    Benchmarking (console time y timeEnd)

    07:48 min
  • 27
    Debugger

    Debugger

    09:41 min
  • 28
    Error First Callbacks

    Error First Callbacks

    09:32 min

Manejar herramientas con Node

  • 29
    Scraping

    Scraping

    10:12 min
  • 30
    Automatización de procesos

    Automatización de procesos

    11:15 min
  • 31
    Aplicaciones de escritorio

    Aplicaciones de escritorio

    10:16 min
Tomar examen

Escuelas

  • Desarrollo Web
    • Fundamentos del Desarrollo Web Profesional
    • Diseño y Desarrollo Frontend
    • Desarrollo Frontend con JavaScript
    • Desarrollo Frontend con Vue.js
    • Desarrollo Frontend con Angular
    • Desarrollo Frontend con React.js
    • Desarrollo Backend con Node.js
    • Desarrollo Backend con Python
    • Desarrollo Backend con Java
    • Desarrollo Backend con PHP
    • Desarrollo Backend con Ruby
    • Bases de Datos para Web
    • Seguridad Web & API
    • Testing Automatizado y QA para Web
    • Arquitecturas Web Modernas y Escalabilidad
    • DevOps y Cloud para Desarrolladores Web
  • English Academy
    • Inglés Básico A1
    • Inglés Básico A2
    • Inglés Intermedio B1
    • Inglés Intermedio Alto B2
    • Inglés Avanzado C1
    • Inglés para Propósitos Específicos
    • Inglés de Negocios
  • Marketing Digital
    • Fundamentos de Marketing Digital
    • Marketing de Contenidos y Redacción Persuasiva
    • SEO y Posicionamiento Web
    • Social Media Marketing y Community Management
    • Publicidad Digital y Paid Media
    • Analítica Digital y Optimización (CRO)
    • Estrategia de Marketing y Growth
    • Marketing de Marca y Comunicación Estratégica
    • Marketing para E-commerce
    • Marketing B2B
    • Inteligencia Artificial Aplicada al Marketing
    • Automatización del Marketing
    • Marca Personal y Marketing Freelance
    • Ventas y Experiencia del Cliente
    • Creación de Contenido para Redes Sociales
  • Inteligencia Artificial y Data Science
    • Fundamentos de Data Science y AI
    • Análisis y Visualización de Datos
    • Machine Learning y Deep Learning
    • Data Engineer
    • Inteligencia Artificial para la Productividad
    • Desarrollo de Aplicaciones con IA
    • AI Software Engineer
  • Ciberseguridad
    • Fundamentos de Ciberseguridad
    • Hacking Ético y Pentesting (Red Team)
    • Análisis de Malware e Ingeniería Forense
    • Seguridad Defensiva y Cumplimiento (Blue Team)
    • Ciberseguridad Estratégica
  • Liderazgo y Habilidades Blandas
    • Fundamentos de Habilidades Profesionales
    • Liderazgo y Gestión de Equipos
    • Comunicación Avanzada y Oratoria
    • Negociación y Resolución de Conflictos
    • Inteligencia Emocional y Autogestión
    • Productividad y Herramientas Digitales
    • Gestión de Proyectos y Metodologías Ágiles
    • Desarrollo de Carrera y Marca Personal
    • Diversidad, Inclusión y Entorno Laboral Saludable
    • Filosofía y Estrategia para Líderes
  • Diseño de Producto y UX
    • Fundamentos de Diseño UX/UI
    • Investigación de Usuarios (UX Research)
    • Arquitectura de Información y Usabilidad
    • Diseño de Interfaces y Prototipado (UI Design)
    • Sistemas de Diseño y DesignOps
    • Redacción UX (UX Writing)
    • Creatividad e Innovación en Diseño
    • Diseño Accesible e Inclusivo
    • Diseño Asistido por Inteligencia Artificial
    • Gestión de Producto y Liderazgo en Diseño
    • Diseño de Interacciones Emergentes (VUI/VR)
    • Desarrollo Web para Diseñadores
    • Diseño y Prototipado No-Code
  • Contenido Audiovisual
    • Fundamentos de Producción Audiovisual
    • Producción de Video para Plataformas Digitales
    • Producción de Audio y Podcast
    • Fotografía y Diseño Gráfico para Contenido Digital
    • Motion Graphics y Animación
    • Contenido Interactivo y Realidad Aumentada
    • Estrategia, Marketing y Monetización de Contenidos
  • Desarrollo Móvil
    • Fundamentos de Desarrollo Móvil
    • Desarrollo Nativo Android con Kotlin
    • Desarrollo Nativo iOS con Swift
    • Desarrollo Multiplataforma con React Native
    • Desarrollo Multiplataforma con Flutter
    • Arquitectura y Patrones de Diseño Móvil
    • Integración de APIs y Persistencia Móvil
    • Testing y Despliegue en Móvil
    • Diseño UX/UI para Móviles
  • Diseño Gráfico y Arte Digital
    • Fundamentos del Diseño Gráfico y Digital
    • Diseño de Identidad Visual y Branding
    • Ilustración Digital y Arte Conceptual
    • Diseño Editorial y de Empaques
    • Motion Graphics y Animación 3D
    • Diseño Gráfico Asistido por Inteligencia Artificial
    • Creatividad e Innovación en Diseño
  • Programación
    • Fundamentos de Programación e Ingeniería de Software
    • Herramientas de IA para el trabajo
    • Matemáticas para Programación
    • Programación con Python
    • Programación con JavaScript
    • Programación con TypeScript
    • Programación Orientada a Objetos con Java
    • Desarrollo con C# y .NET
    • Programación con PHP
    • Programación con Go y Rust
    • Programación Móvil con Swift y Kotlin
    • Programación con C y C++
    • Administración Básica de Servidores Linux
  • Negocios
    • Fundamentos de Negocios y Emprendimiento
    • Estrategia y Crecimiento Empresarial
    • Finanzas Personales y Corporativas
    • Inversión en Mercados Financieros
    • Ventas, CRM y Experiencia del Cliente
    • Operaciones, Logística y E-commerce
    • Gestión de Proyectos y Metodologías Ágiles
    • Aspectos Legales y Cumplimiento
    • Habilidades Directivas y Crecimiento Profesional
    • Diversidad e Inclusión en el Entorno Laboral
    • Herramientas Digitales y Automatización para Negocios
  • Blockchain y Web3
    • Fundamentos de Blockchain y Web3
    • Desarrollo de Smart Contracts y dApps
    • Finanzas Descentralizadas (DeFi)
    • NFTs y Economía de Creadores
    • Seguridad Blockchain
    • Ecosistemas Blockchain Alternativos (No-EVM)
    • Producto, Marketing y Legal en Web3
  • Recursos Humanos
    • Fundamentos y Cultura Organizacional en RRHH
    • Atracción y Selección de Talento
    • Cultura y Employee Experience
    • Gestión y Desarrollo de Talento
    • Desarrollo y Evaluación de Liderazgo
    • Diversidad, Equidad e Inclusión
    • AI y Automatización en Recursos Humanos
    • Tecnología y Automatización en RRHH
  • Finanzas e Inversiones
    • Fundamentos de Finanzas Personales y Corporativas
    • Análisis y Valoración Financiera
    • Inversión y Mercados de Capitales
    • Finanzas Descentralizadas (DeFi) y Criptoactivos
    • Finanzas y Estrategia para Startups
    • Inteligencia Artificial Aplicada a Finanzas
    • Domina Excel
    • Financial Analyst
    • Conseguir trabajo en Finanzas e Inversiones
  • Startups
    • Fundamentos y Validación de Ideas
    • Estrategia de Negocio y Product-Market Fit
    • Desarrollo de Producto y Operaciones Lean
    • Finanzas, Legal y Fundraising
    • Marketing, Ventas y Growth para Startups
    • Cultura, Talento y Liderazgo
    • Finanzas y Operaciones en Ecommerce
    • Startups Web3 y Blockchain
    • Startups con Impacto Social
    • Expansión y Ecosistema Startup
  • Cloud Computing y DevOps
    • Fundamentos de Cloud y DevOps
    • Administración de Servidores Linux
    • Contenerización y Orquestación
    • Infraestructura como Código (IaC) y CI/CD
    • Amazon Web Services
    • Microsoft Azure
    • Serverless y Observabilidad
    • Certificaciones Cloud (Preparación)
    • Plataforma Cloud GCP

Platzi y comunidad

  • Platzi Business
  • Live Classes
  • Lanzamientos
  • Executive Program
  • Trabaja con nosotros
  • Podcast

Recursos

  • Manual de Marca

Soporte

  • Preguntas Frecuentes
  • Contáctanos

Legal

  • Términos y Condiciones
  • Privacidad
  • Tyc promociones
Reconocimientos
Reconocimientos
Logo reconocimientoTop 40 Mejores EdTech del mundo · 2024
Logo reconocimientoPrimera Startup Latina admitida en YC · 2014
Logo reconocimientoPrimera Startup EdTech · 2018
Logo reconocimientoCEO Ganador Medalla por la Educación T4 & HP · 2024
Logo reconocimientoCEO Mejor Emprendedor del año · 2024
De LATAM conpara el mundo
YoutubeInstagramLinkedInTikTokFacebookX (Twitter)Threads
        Ginnio Sarabia

        Ginnio Sarabia

        student•
        hace 6 años

        Seria genial poder LIKE a clases para que Platzi sepa cuales son las favoritas.

        Esta me gusto mucho.

          Juan Pedraza

          Juan Pedraza

          student•
          hace 6 años

          Comparto la idea, sería bueno que las clases tuvieran esa opción, no soo sabrían cuales son las clases que más gustan, sino que podrían usarlas para mejorar las demás

          Sebastian Duran

          Sebastian Duran

          student•
          hace 5 años

          Según han explicado ellos miden los profesores por la tasa de completado de los cursos (completation rate), pero si debería haber una métrica para la clase

        Juan Esteban Galvis

        Juan Esteban Galvis

        student•
        hace 5 años

        😂😂😂😂😂😂😂😂😂

        Existe un modulo que valida si es par, y otro para validar si no es par pues utiliza el modulo de par y lo niega JAJAJA

        Ahora entiendo porque node_modules siempre están pesado, por las dependencias de cada paquete y las dependencias de las dependencias, etc (Hay cientos de memes de esta carpeta JAJA).

        !node_Modules

          Rodrigo Rodriguez

          Rodrigo Rodriguez

          student•
          hace 5 años

          jajaj, tal cual !

          Arian Driussi

          Arian Driussi

          student•
          hace 4 años

          jjaajaj vi ese meme hace tiempo pero nunca lo entendi, ahora lo entiendo xd

        Wilson Fernando Antury Torres

        Wilson Fernando Antury Torres

        student•
        hace 6 años

        Debemos tener cuidado a la hora de elegir un paquete, pues vamos a depender de éste, así que es mejor que esta dependencia tenga buen soporte, buenas actualizaciones y ya haya sido ampliamente testeado por muchos usuarios.

          Josue Zafra

          Josue Zafra

          student•
          hace 6 años

          I agree

          Patricio Zavala

          Patricio Zavala

          student•
          hace 4 años

          Eso es verdad... ver la actividad en github para saber si tiene soporte y todo eso.

          Saludos

        Carlos Valentín Huanca Gutiérrez

        Carlos Valentín Huanca Gutiérrez

        student•
        hace 6 años

        Npm install el pan de cada dia

          Jose Jimenez

          Jose Jimenez

          student•
          hace 4 años

          npm i = hoy asi, esperando que tiren el = n i = un pan simple jaja

        Andres Ramirez Restrepo

        Andres Ramirez Restrepo

        student•
        hace 6 años

        npm (Node Package Manager) es un administrador de paquetes que permiten ejecutar funciones ya realizadas y validadas y de esta manera acelerar y asegurar la calidad de neustro proceso de desarrollo.

        Podemos buscar modulos para casi todo en:

        npm

        // Para instalar un modulo de npm en nuestro proyecto $ npm install is-odd // Para requerir el modulo const isOdd = require('is-odd'); console.log(isOdd(3)); // true // Para revisar que los paquetes no estan actualizados a nivel global dentro de nuestro proyecto npm outdated -g --depth=0 /* Va a imprimir algo así: Package Current Wanted Latest Location firebase-tools 8.0.1 8.0.2 8.0.2 global npm 6.13.7 6.14.4 6.14.4 global */ // Para actualizar todos los paquetes a nivel global dentro del proyecto npm update -g
          Jimmy Buriticá Londoño

          Jimmy Buriticá Londoño

          student•
          hace 5 años

          Muy buen aporte.

          Matías Wasiak

          Matías Wasiak

          student•
          hace 5 años

          Gracias!

        Santiago Lopera Naranjo

        Santiago Lopera Naranjo

        student•
        hace 6 años

        Les recomiendo el curso de NPM, es corto y explica de forma mas profunda su uso. inclusive de como crear paquetes. Se los dejo aquí

          Hiram Rodriguez Gomez

          Hiram Rodriguez Gomez

          student•
          hace 5 años

          Tienes razón. Ya lo revisé y si es corto, y creo que nos facilita la vida porque en casi todos los cursos técnicos que he realizado, en alguna clase lo terminamos usando.

          Uno más agregado a mi ruta.

          Jimmy Buriticá Londoño

          Jimmy Buriticá Londoño

          student•
          hace 5 años

          Buena recomendación.

        Luis Martinez

        Luis Martinez

        student•
        hace 6 años

        Me cae bienn este maestro jajaja

          Ginnio Sarabia

          Ginnio Sarabia

          student•
          hace 6 años

          Siempre cuando empiezo un curso tengo "miedo" que el maestro sea aburrido.

          La escuela de JavaScript no ha decepcionado hasta este punto con los maestros.

        Ronaldo Miguel Sic Vásquez

        Ronaldo Miguel Sic Vásquez

        student•
        hace 5 años

        Comando más usados de npm

        #Iniciar un proyecto npm init #Iniciar un proyecto con configuración automática npm init -y #Instalar dependencias para producción npm install nombreDelPaquete --save #Alternativa 2 de Instalar dependencias para producción o desarrollo npm i nombreDelPaquete -S #Instalar dependencias para desarrollo npm install nombreDelPaquete --save-dev # npm i nombreDelPaquete -D #Instalar dependencias de manera global npm install -g nombreDelPaquete # npm i -g nombreDelPaquete #Instalar una versión especifica de una dependencia npm install -g nombreDelPaquete@1.0.0 #Desinstalar dependencias npm uninstall nombreDelPaquete #Ver dependencias desactualizadas npm outdate #Actualizar las dependencias desactualizadas npm update
          César Palma

          César Palma

          student•
          hace 5 años

          --save: dependencias --save-dev: dependencias solo para desarrollo (no se instalan en producción)

          Mauricio Gonzalez Falcon

          Mauricio Gonzalez Falcon

          student•
          hace 4 años

          También es una buena idea hacer el curso de gestión de paquetes y dependencias con npm de platzi :D

        Sebastián Gonzalez Quintero

        Sebastián Gonzalez Quintero

        student•
        hace 5 años

        En caso de que estén utilizando Git para controlar los archivos en el proyecto. Ejecuten la siguiente línea para crear el gitignore:

        npx gitignore node

        Esto creará un archivo gitignore para evitar subir cosas de node que no deberían ir en el repo.

          Khevin Efraín

          Khevin Efraín

          student•
          hace 5 años

          Gracias crack!

        Manuel Lagos

        Manuel Lagos

        student•
        hace 6 años

        al momento que escribo este aporte hay (1.182.587) de paquetes en NPM

          Sergio Martínez Cuevas

          Sergio Martínez Cuevas

          student•
          hace 5 años

          update: 1,426,337

          Carlos Eduardo Hernandez Carreno

          Carlos Eduardo Hernandez Carreno

          student•
          hace 5 años

          update2 1.471.014

        María Sierra

        María Sierra

        student•
        hace 5 años

        Gestión de paquetes: NPM y package.json


        📋 NPM es un gestor de paquetes.

        Tampoco vamos a instalar muchísimos paquetes, pero tener los necesarios y mantenerlos al día nos ayudará.

        Para iniciar NPM utilizamos los comandos:

        npm init

        Y para instalar un paquete:

        npm install *paquete*
        Simón Arenas

        Simón Arenas

        student•
        hace 5 años
        r_142370_fsNMV.jpg
        M. Ray Medina Salcedo

        M. Ray Medina Salcedo

        student•
        hace 5 años

        No tenemos que tener todo en la cabeza y el min 7:52 es la prueba. Hasta a este tremendo profe se le olvida la sintaxis 😜

        Andres Roberto Coello Goyes

        Andres Roberto Coello Goyes

        student•
        hace 6 años

        https://platzi.com/clases/npm/ tambien existe un curso para aprender a manejar NPM.

        Beto Toro

        Beto Toro

        student•
        hace 5 años

        Y recuerden amigos. Nunca manden el node_modules a github. Incluyanlo siempre en su .gitignore

        Jose Daniel Molina

        Jose Daniel Molina

        student•
        hace 6 años

        Debemos tener cuidado con los paquetes que instalamos, que no tengan vulnerabilidades o por lo menos no de nivel high, ya que eso puede comprometer la seguridad de nuestro software

        Arlen Elian Ruiz Pedraza

        Arlen Elian Ruiz Pedraza

        student•
        hace 5 años

        mi pregunta es como se desinstalar un paquete ?

          Francisco Ponce

          Francisco Ponce

          student•
          hace 5 años

          Hola Arlen,

          Para desinstalar un paquete o una dependencia debes ejecutar el comando:

          npm uninstall <NombreDelaDependencia>
          Luis Andrade

          Luis Andrade

          student•
          hace 5 años

          Utilizando el comando de npm

          npm uninstall nombreDelPaquete
        Juan Camilo Cortes

        Juan Camilo Cortes

        student•
        hace 4 años

        No me explico como este profesor no es tan conocido en la comunidad de platzi si es muy bueno, e visto antes clases de npm donde modificas el package.json y no lo hacen ver tan sencillo como Carlos Hernandez. Un 10 para este profe.

          Markin Piero Pulache Guarniz

          Markin Piero Pulache Guarniz

          student•
          hace 2 años

          x2

        Erick Alejandro Graterol Barico

        Erick Alejandro Graterol Barico

        student•
        hace 4 años

        Este profesor es muy bueno explicando, diria que lo mejor de el es como abtrae los temas complicados de igual forma que otros maestros como facundo de python ...

        Luis von Rickenbach

        Luis von Rickenbach

        student•
        hace 4 años

        Si les interesa profundizar en el manejo de paquetes con NPM el Curso de Gestión de Dependencias y Paquetes con NPM de Oscar está muy bueno.

          Joel Josué Rojas Quisbert

          Joel Josué Rojas Quisbert

          student•
          hace 4 años

          Uno de los mejores cursos de Oscar que he tomado hasta ahora... 😅😅😅