<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1">
<url>
<loc>https://devalvaro.vercel.app</loc>
<lastmod>2026-09-20T15:09:18.892Z</lastmod>
<changefreq>yearly</changefreq>
<priority>1</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/about</loc>
<lastmod>2026-09-20T15:09:18.892Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/projects</loc>
<lastmod>2026-09-20T15:09:18.892Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog</loc>
<lastmod>2026-09-20T15:09:18.892Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/contact</loc>
<lastmod>2026-09-20T15:09:18.892Z</lastmod>
<changefreq>yearly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/certifications</loc>
<lastmod>2026-09-20T15:09:18.892Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/projects/tablao-flamenco-las-setas</loc>
<lastmod>2026-09-20T15:09:18.892Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/projects/lunar-red-social</loc>
<lastmod>2026-09-20T15:09:18.892Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/projects/howeb-hotel-booking</loc>
<lastmod>2026-09-20T15:09:18.892Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/projects/fisicamr-landing-page</loc>
<lastmod>2026-09-20T15:09:18.892Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/projects/weather-app</loc>
<lastmod>2026-09-20T15:09:18.892Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/projects/gym-app</loc>
<lastmod>2026-09-20T15:09:18.892Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/projects/iris-buscador-viajes</loc>
<lastmod>2026-09-20T15:09:18.892Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/projects/alejandria-biblioteca-personal</loc>
<lastmod>2026-09-20T15:09:18.892Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/formularios-en-react-de-usestate-a-react-hook-form-2</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/37085302/pexels-photo-37085302.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-09-20T08:03:18.657Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/notacion-big-o-sin-dolor-como-medir-tu-codigo-2</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/2004161/pexels-photo-2004161.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-09-19T08:03:16.552Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/sql-vs-nosql-como-elegir-la-base-de-datos-adecuada-para-tu-proximo-proyecto-2</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/2881228/pexels-photo-2881228.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-09-18T08:03:16.440Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/map-filter-y-reduce-domina-los-arrays-en-javascript</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/247791/pexels-photo-247791.png?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-09-17T08:03:17.028Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/app-router-de-nextjs-que-cambia-frente-al-pages-router</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/442150/pexels-photo-442150.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-09-16T08:03:21.531Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/como-medir-y-mejorar-el-rendimiento-de-una-web-2</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/267415/pexels-photo-267415.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-09-15T10:47:14.381Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/crea-tus-propios-hooks-personalizados-en-react-guia-practica</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/34803985/pexels-photo-34803985.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-09-14T09:05:12.252Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/diseno-responsive-de-verdad-mas-alla-de-los-media-queries-2</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/31160653/pexels-photo-31160653.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-09-13T08:00:54.113Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/closures-en-javascript-debounce-y-throttle-con-ejemplos-reales</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/38440159/pexels-photo-38440159.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-09-12T08:00:53.458Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/closures-en-javascript-validacion-de-formularios-y-estado-interno-sin-frameworks</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/360591/pexels-photo-360591.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-09-11T08:00:54.737Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/closures-en-javascript-construyendo-un-sistema-de-plugins-sencillo</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/37397323/pexels-photo-37397323.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-09-10T08:00:53.605Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/closures-en-javascript-como-gestionar-suscripciones-y-crear-iteradores-personalizados</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/360591/pexels-photo-360591.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-09-09T08:00:53.526Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/closures-en-javascript-como-crear-utilidades-configurables-y-reutilizables</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/5125366/pexels-photo-5125366.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-09-08T08:00:52.939Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/closures-en-javascript-temporizadores-carga-diferida-y-configuracion-encapsulada</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/16023919/pexels-photo-16023919.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-09-07T08:00:52.978Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/closures-en-javascript-desmitificando-su-uso-paso-a-paso</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/270366/pexels-photo-270366.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-09-06T08:00:51.931Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/closures-en-javascript-ejemplos-reales-que-todo-dev-deberia-conocer</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/5125366/pexels-photo-5125366.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-09-05T08:00:52.839Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/closures-en-javascript-como-crear-apis-privadas-y-memorizar-resultados</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/360591/pexels-photo-360591.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-09-04T08:01:46.830Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/closures-en-javascript-conceptos-clave-y-casos-de-uso-cotidianos</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/37397323/pexels-photo-37397323.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-09-03T08:00:52.569Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/entendiendo-los-closures-en-javascript-mas-alla-del-alcance</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/6308163/pexels-photo-6308163.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-09-02T08:00:52.494Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/por-que-merece-la-pena-invertir-tiempo-en-proyectos-personales</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/19901193/pexels-photo-19901193.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-08-31T08:52:04.394Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/ventajas-de-los-proyectos-personales-para-tu-desarrollo-como-dev</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/30770029/pexels-photo-30770029.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-08-30T08:52:04.188Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/proyectos-personales-la-inversion-que-impulsa-tu-crecimiento-como-dev</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/17558103/pexels-photo-17558103.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-08-29T08:52:04.212Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/sacarle-partido-a-las-devtools-del-navegador</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/31343632/pexels-photo-31343632.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-08-28T08:52:04.531Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/closures-en-javascript-como-usarlos-en-proyectos-reales</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/360591/pexels-photo-360591.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-08-27T08:45:00.076Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/sql-vs-nosql-como-elegir-la-base-de-datos-adecuada-para-tu-proximo-proyecto</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/17489153/pexels-photo-17489153.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-08-26T08:45:00.341Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/como-dar-y-recibir-code-reviews-sin-dramas</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/574069/pexels-photo-574069.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-08-25T08:44:58.747Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/git-rebase-vs-merge-diferencias-y-cuando-usar-cada-uno</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/577585/pexels-photo-577585.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-08-24T08:44:58.870Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/testing-en-frontend-que-probar-y-que-no</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/34804010/pexels-photo-34804010.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-08-23T08:45:00.207Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/seo-tecnico-desde-el-punto-de-vista-de-un-frontend</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/267415/pexels-photo-267415.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-08-22T08:45:00.166Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/buenas-practicas-con-tailwind-css-en-proyectos-grandes</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/248515/pexels-photo-248515.png?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-08-21T08:45:00.688Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/usememo-y-usecallback-cuando-optimizan-y-cuando-estorban</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/37085304/pexels-photo-37085304.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-08-20T08:45:00.392Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/utility-types-de-typescript-que-deberias-conocer</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/14553730/pexels-photo-14553730.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-08-16T08:24:53.215Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/formularios-en-react-de-usestate-a-react-hook-form</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/11035471/pexels-photo-11035471.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-08-15T08:24:53.327Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/autenticacion-con-jwt-explicada-paso-a-paso</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/6424591/pexels-photo-6424591.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-08-14T08:27:11.436Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/app-router-de-nextjs-que-cambia-frente-a-pages-router</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/4164418/pexels-photo-4164418.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-08-13T08:27:11.288Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/server-components-en-nextjs-explicados-sin-humo</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/37085303/pexels-photo-37085303.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-08-12T08:27:12.559Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/flexbox-vs-grid-cuando-usar-cada-uno</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/14553730/pexels-photo-14553730.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-08-11T08:27:12.747Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/punteros-en-c-que-son-y-como-perderles-el-miedo</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/5104135/pexels-photo-5104135.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-08-10T08:27:10.372Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/destructuring-y-spread-operator-en-la-practica</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/5125366/pexels-photo-5125366.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-08-09T08:27:11.343Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/lo-que-aprendi-programando-por-mi-cuenta-fuera-del-trabajo</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/270623/pexels-photo-270623.png?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-08-08T08:27:12.060Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/promesas-y-asyncawait-de-la-teoria-al-codigo</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/270373/pexels-photo-270373.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-08-07T08:27:12.382Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/el-valor-de-los-proyectos-personales-en-tu-carrera-como-desarrollador</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/17981688/pexels-photo-17981688.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-08-06T08:27:10.624Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/el-temido-this-en-javascript-de-una-vez-por-todas</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/574077/pexels-photo-574077.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-08-05T08:27:12.266Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/notacion-big-o-sin-dolor-como-medir-tu-codigo</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/25626445/pexels-photo-25626445.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-08-04T08:43:38.322Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/map-filter-y-reduce-domina-los-arrays-en-js</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/249798/pexels-photo-249798.png?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-08-03T08:43:38.255Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/pilas-colas-y-listas-enlazadas-explicadas-con-ejemplos</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/12205143/pexels-photo-12205143.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-08-02T08:43:38.891Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/variables-css-para-temas-clarooscuro-sin-librerias</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/330771/pexels-photo-330771.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-08-01T08:43:39.127Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/context-api-vs-gestores-de-estado-cuando-usar-cada-uno</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/30974676/pexels-photo-30974676.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-07-31T08:43:38.177Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/firebase-vs-supabase-comparativa-para-un-frontend</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/270366/pexels-photo-270366.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-07-30T08:23:16.333Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/genericos-en-typescript-cuando-y-por-que-usarlos</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/31343632/pexels-photo-31343632.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-07-29T08:41:25.139Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/como-medir-y-mejorar-el-rendimiento-de-una-web</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/256502/pexels-photo-256502.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-07-28T08:33:31.694Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/como-funciona-el-event-loop-en-javascript</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/16023919/pexels-photo-16023919.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-07-27T08:33:31.689Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/disenar-una-api-rest-limpia-con-nodejs</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/360591/pexels-photo-360591.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-07-26T08:33:31.198Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/diseno-responsive-de-verdad-mas-alla-de-los-media-queries</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/11035386/pexels-photo-11035386.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-07-25T08:33:31.296Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/flujo-de-trabajo-con-git-que-uso-en-proyectos-reales</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/34803997/pexels-photo-34803997.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-07-23T08:33:31.617Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/accesibilidad-web-lo-minimo-que-todo-frontend-deberia-saber</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/36571389/pexels-photo-36571389.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-07-22T08:33:31.876Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/crea-tus-propios-hooks-personalizados-en-react</loc>
<image:image>
<image:loc>https://images.pexels.com/photos/37085302/pexels-photo-37085302.jpeg?auto=compress&amp;cs=tinysrgb&amp;h=650&amp;w=940</image:loc>
</image:image>
<lastmod>2026-07-21T08:31:23.954Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://devalvaro.vercel.app/blog/hola-mundo-nuevo-espacio-digital</loc>
<image:image>
<image:loc>https://images.unsplash.com/photo-1675495666589-94cdafbcfcc8?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3w3NDE5ODJ8MHwxfHNlYXJjaHw4fHxjb2RlJTIwdGVjaG5vbG9neXxlbnwwfHx8fDE3NjA5Njc3ODl8MA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080</image:loc>
</image:image>
<lastmod>2026-07-20T19:18:49.613Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
</urlset>
