CRISTIAN BARBERO PÉREZ
Sebastian Cifuentes
Daniel Ruiz
Recuerda que no podemos mejorar lo que no podemos medir. Para ello vamos a utilizar la herramienta Lighthouse, que nos ayuda a medir temas de accesibilidad, performance, buenas prácticas, entre otras. No tendrás que preocuparte por instalar nada, ya que viene embebida en las DevTools de Chrome.
Cómo acceder a Lighthouse
Abrimos el proyecto en nuestro navegador.
Clic derecho en alguna parte del proyecto. Clic en "Inspeccionar" para abrir las DevTools.
Al extender la sección de pestañas, seleccionamos "Lighthouse".
Observamos varias opciones que podemos analizar. Puedes seleccionar todas o las que necesites. Sólo podemos generar un reporte por versión mobile o desktop. Si quieres ambas, genera otro reporte con la opción que te falte.
Una vez hecha la elección, clic en "Generar reporte". Esperamos a que termine de generarlo.
Analizamos los resultados
Cómo monitorear el performance
Toma en cuenta que no debes frustarte por resultados no perfectos. Mientras se encuentre por encima del 90% significa que tu página está bien construida. Esto es porque hay muchos factores que determinan estas estadísticas como una mala conexión a internet, un mal computador o algún otro incoveniente que no puedas controlar.
El valor más bajo es el performance, o la velocidad de carga de nuestra página. Revisamos las razones haciendo clic sobre el mismo valor.
Se despliegan todos los detalles que se encontraron. Vamos a la sección de oportunidades.
Al desplegar cada una de las sugerencias que nos hace la herramienta, encontramos que la imagen de la sección comodín está algo pesada. Incluso nos recomienda comprimirla para aliviar un poco la puntuación que nos está dando. Podríamos también, por ejemplo, seleccionar un tamaño de imagen más pequeño para móvil y otro para desktop. De esta manera sólo se descargaría la que necesite el usuario.
Cómo monitorear accessibility
Esta parte es muy importante. Lighthouse nos recomienda ajustar mejor los constrastes de ciertas etiquetas de párrafo para personas que tienen problemas de visión. En este caso podrías subir la opacidad de ciertas fuentes cuyo fondo tiene un color similar.
Te recomiendo tomar el Curso de Accesibilidad Web para que puedas profundizar más sobre este tema.
Qué puedes hacer con el feature de "mejora"
Al realizar el análisis en la versión de escritorio vemos cómo el performance sube mucho. Esto se debe a que una computadora puede tener mucho más poder de cómputo que un dispositivo móvil, como en este caso. Si aplicaste muchos estilos y elementos personales es probable que la parte de performance esté más baja.
Te recomiendo tomar el Curso de Optimización Web de cualquier manera para construir páginas web que vayan a la velocidad de la luz.
Toma en cuenta las recomendaciones que hace Lighthouse ya que es una forma de mejorar tu página en estos sentidos y lograr que sea mucho más fácil y cómoda de usar para la mayoría de usuarios posibles. ¡Haz de esta herramienta un superpoder para mejorar tus proyectos!
Contribución creada por: José Miguel Veintimilla (Platzi Contributor).
CRISTIAN BARBERO PÉREZ
Sebastian Cifuentes
Daniel Ruiz
Yosef Enmanuel Blandin Rios
Esteban Casallas
Mario Anthonny
Alejandro Ruiz Melo
Camila Andrea Díaz Serrano
Mildred Zaragoza
Michael Steven Viloria García
Isaac Yael Ruiz
Camila Andrea Díaz Serrano
Gonzalo Vidal
Sergio Andrés Bolaños Penagos
Tobías Schwarz
Facundo Sebastian Garay Nuñez
Edgar Ramón González Contreras
Camilo Beltrán
Felipe Avendaño Toro
Efraín Hernández García
Camila Andrea Díaz Serrano
Enzo Ivan Valdez
Marianna Guedez
Rubén Cuello
Yerson Felipe Ramirez Garnica
Diego Fabian Rico Castro
Benjamin Allen Ramirez Horna
Gabriela Mabel Mignone
Javier Paulo Perdomo Tamani
Fabian Escalera Caballero
Kevin J. Zea Alvarado
Sofia Stefany Liera Rodriguez
Amaury Soto Garay
Isabela Jimenez Salazar
Segundo Juan
Nicolas Cordoba
Leonardo Rincon
Juan Daniel Diaz Jaramillo
Josué David Coreas Paiz
Juan Daniel Diaz Jaramillo
Daniel Alejandro Romero Navarro
Kevin J. Zea Alvarado
Ederson Felipe Lopez Bolivar
Daniel Alejandro Romero Navarro
Luis Palomo
Si a alguien le sucede lo siguiente, puede instalar la extensión Live Server para VSCode y pulsar el botón situado abajo a la derecha que dice Go Live.
Gracias!
Gracias!
Lighthouse es simplemente fascinante
Así es, es una herramienta magnífica !
En edge tambien hay lighthouse menos mal
Se puede incluir en la etiqueta IMG la propiedad loading="lazy" para que el navegador solo descargue las imágenes cuando se visualizan.
<img loading="lazy" src="./assets/img/logo-footer.svg" alt="Logo de Batabit 2020" />
Buen dato
Wow, con eso el performance del mío pasó de 56 a 96, gracias :)
Version movil de platzi xD me dejo sorprendido la verdad :D
De hecho si he tenido varios problemas tanto con la app como con la página, yo pensaba que era mi celular de 3 pesos y mi computador de piedra jajaja
jajaja
El 96 en accesibilidad, me dan por el bendito contraste pero ya que...😂, se ven bonitos los colores, no quiero cambiarlos 😆 al menos se por qué no llego a 100, antes lo veía imposible pero ahora se que no es tan dificil :)
Utilicen esta herramienta en modo incognito, según he visto las extensiones que tenemos instaladas realentizan el proceso de carga de las páginas y baja la puntuación.
Gracias Sergio!
Si usan firefox tienen que instalar la extension les dejo el link https://addons.mozilla.org/en-US/firefox/addon/google-lighthouse/
Gracias por el dato :)
Yo ya me estaba echando a la pena por tener que usar Chrome
Movil
Waow muy bien!
excelente
Del curso definitivo de HTML y CSS me quedó eso de achicar el peso de las img!!
Así salieron los resultados:
Mobile
Desktop
Seguí todas las recomendaciones que me decía lighthouse, testee nuevamente mi página y me bajó el % de performance. jaja.
Es excelente :D
pues para trabajar en google ha cometido muchos errores, en clases grabadas.
👏😄
Hola comunidad de Platzi. Me gustaria saber como se trabaja en CSS cuando nuestro sitio tiene muchas páginas (Home, Contacto, Portafolio, etc).
Se deja todo en un solo archivo CSS? o se crea un archivo CSS para cada página?
Muchas gracias!
Hola, Fabián. 👋
Ésa es una buena pregunta. Y es que depende de la manera de trabajar de cada proyecto.
Si se estuviera trabajando sólo con tecnologías puras (HTML, CSS y JS), se le tendría que asignar los archivos CSS correspondientes a cada página HTML; no obstante, se podría crear un archivo general CSS que se aplique a todas las páginas y se le agrega, además, estilos aparte de sólo esa página.
En el caso de React, por ejemplo, se suelen asignar los archivos CSS a cada componente y cada página. Y en la página que se esté mostrando sólo se cargará el CSS de los componentes que van en esa página.
en lo particular yo hago un archivo css para cada página con el mismo nombre del archivo html correspondiente y ya nada mas lo vinculo. Se me hace más organizado y puedes tener estilos independientes.
Mi repo, espero les guste, tiene un poco mas de detalles responsive y dos animaciones: https://amaurysg.github.io/mobile-first-batatabit/
te quedo muy lindo, pero revisa a 320 de ancho se genera un espacio en blanco al lado derecho
esta genial, el tema de los font-size como lo solucionaste?
"No puedes mejorar lo que no se mide"
Me falta mejorar en mobile algunas cosas Desktop
Mobile
Utilizo Atom cómo hago para poder analizar con lighthouse?
Lo he intentado mientras está activo el liver server de atom, luego lo quité, lo abrí sin el liver server y me sale esto:
Hola @juandaniel18_ para realizar el análisis con lighthouse si debes tener un servidor activo, al quitarlo no te va a dejar realizar el análisis.
Si lo pude resolver, gracias.
yo e escuchado que se puede optimizar el HTML colocándolo en una sola linea de código pero no se como se logra eso ni cuanto impacto tiene en el proyecto ¿Alguien sabe del tema?
Hola, Dani. 👋
¿Te refieres a que si se escribe todo el código del HTML en una sola línea es optimizado? Es decir, ¿que podría llegar a ser cargado más rápidamente o algo así?
Esto se logra con cosas como webpack ya que escribir HTML en desarrollo en una sola linea es horrible porque seria muy difícil entender el código por lo que se puede usar webpack para que el código se optimice
este curso te puede enseñar a hacer esto y muchas cosas mas.
hola a todos, si yo quiero agregar un pequeño videojuego en el proyecto, ¿Pero quiero que se cargue únicamente en la versión de computadora como lo podría lograr?
Podrías agregar un display:none; en el elemento contenedor y activarlo con media query a display:block; o dejat el elemento con un id y agregar desde javascript el template.