<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:mobile="http://www.google.com/schemas/sitemap-mobile/1.0" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xmlns:video="http://www.google.com/schemas/sitemap-video/1.1">
<url><loc>https://codenroll.dev/en/news/i-replaced-auth0-with-an-open-source-library-in-30-minutes-here-is-what-broke</loc><lastmod>2026-04-18T21:00:01.535Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/pt/news/i-replaced-auth0-with-an-open-source-library-in-30-minutes-here-is-what-broke</loc><lastmod>2026-04-18T21:00:01.535Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/es/news/i-replaced-auth0-with-an-open-source-library-in-30-minutes-here-is-what-broke</loc><lastmod>2026-04-18T21:00:01.535Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/fr/news/i-replaced-auth0-with-an-open-source-library-in-30-minutes-here-is-what-broke</loc><lastmod>2026-04-18T21:00:01.535Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/de/news/i-replaced-auth0-with-an-open-source-library-in-30-minutes-here-is-what-broke</loc><lastmod>2026-04-18T21:00:01.535Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/zh/news/i-replaced-auth0-with-an-open-source-library-in-30-minutes-here-is-what-broke</loc><lastmod>2026-04-18T21:00:01.535Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/en/news/why-randomrandint300-850-is-a-bad-fake-credit-score</loc><lastmod>2026-04-18T21:00:01.681Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/pt/news/why-randomrandint300-850-is-a-bad-fake-credit-score</loc><lastmod>2026-04-18T21:00:01.681Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/es/news/why-randomrandint300-850-is-a-bad-fake-credit-score</loc><lastmod>2026-04-18T21:00:01.681Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/fr/news/why-randomrandint300-850-is-a-bad-fake-credit-score</loc><lastmod>2026-04-18T21:00:01.681Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/de/news/why-randomrandint300-850-is-a-bad-fake-credit-score</loc><lastmod>2026-04-18T21:00:01.681Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/zh/news/why-randomrandint300-850-is-a-bad-fake-credit-score</loc><lastmod>2026-04-18T21:00:01.681Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/en/news/the-gke-upgrade-that-took-down-our-production-pods-for-45-minutes</loc><lastmod>2026-04-18T21:00:01.795Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/pt/news/the-gke-upgrade-that-took-down-our-production-pods-for-45-minutes</loc><lastmod>2026-04-18T21:00:01.795Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/es/news/the-gke-upgrade-that-took-down-our-production-pods-for-45-minutes</loc><lastmod>2026-04-18T21:00:01.795Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/fr/news/the-gke-upgrade-that-took-down-our-production-pods-for-45-minutes</loc><lastmod>2026-04-18T21:00:01.795Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/de/news/the-gke-upgrade-that-took-down-our-production-pods-for-45-minutes</loc><lastmod>2026-04-18T21:00:01.795Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/zh/news/the-gke-upgrade-that-took-down-our-production-pods-for-45-minutes</loc><lastmod>2026-04-18T21:00:01.795Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/en/news/how-to-build-a-secure-password-reset-flow-in-nextjs-the-short-version</loc><lastmod>2026-04-18T21:00:01.933Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/pt/news/how-to-build-a-secure-password-reset-flow-in-nextjs-the-short-version</loc><lastmod>2026-04-18T21:00:01.933Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/es/news/how-to-build-a-secure-password-reset-flow-in-nextjs-the-short-version</loc><lastmod>2026-04-18T21:00:01.933Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/fr/news/how-to-build-a-secure-password-reset-flow-in-nextjs-the-short-version</loc><lastmod>2026-04-18T21:00:01.933Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/de/news/how-to-build-a-secure-password-reset-flow-in-nextjs-the-short-version</loc><lastmod>2026-04-18T21:00:01.933Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/zh/news/how-to-build-a-secure-password-reset-flow-in-nextjs-the-short-version</loc><lastmod>2026-04-18T21:00:01.933Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/en/news/how-to-build-a-login-flow-in-nextjs-15-sessions-cookies-csrf-and-the-timing-attack-nobody-talks-abou</loc><lastmod>2026-04-18T21:00:02.070Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/pt/news/how-to-build-a-login-flow-in-nextjs-15-sessions-cookies-csrf-and-the-timing-attack-nobody-talks-abou</loc><lastmod>2026-04-18T21:00:02.070Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/es/news/how-to-build-a-login-flow-in-nextjs-15-sessions-cookies-csrf-and-the-timing-attack-nobody-talks-abou</loc><lastmod>2026-04-18T21:00:02.070Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/fr/news/how-to-build-a-login-flow-in-nextjs-15-sessions-cookies-csrf-and-the-timing-attack-nobody-talks-abou</loc><lastmod>2026-04-18T21:00:02.070Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/de/news/how-to-build-a-login-flow-in-nextjs-15-sessions-cookies-csrf-and-the-timing-attack-nobody-talks-abou</loc><lastmod>2026-04-18T21:00:02.070Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/zh/news/how-to-build-a-login-flow-in-nextjs-15-sessions-cookies-csrf-and-the-timing-attack-nobody-talks-abou</loc><lastmod>2026-04-18T21:00:02.070Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/en/news/how-to-build-a-register-user-flow-in-nextjs-15-frontend-backend-database-email</loc><lastmod>2026-04-18T21:00:02.219Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/pt/news/how-to-build-a-register-user-flow-in-nextjs-15-frontend-backend-database-email</loc><lastmod>2026-04-18T21:00:02.219Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/es/news/how-to-build-a-register-user-flow-in-nextjs-15-frontend-backend-database-email</loc><lastmod>2026-04-18T21:00:02.219Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/fr/news/how-to-build-a-register-user-flow-in-nextjs-15-frontend-backend-database-email</loc><lastmod>2026-04-18T21:00:02.219Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/de/news/how-to-build-a-register-user-flow-in-nextjs-15-frontend-backend-database-email</loc><lastmod>2026-04-18T21:00:02.219Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/zh/news/how-to-build-a-register-user-flow-in-nextjs-15-frontend-backend-database-email</loc><lastmod>2026-04-18T21:00:02.219Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/en/news/scraping-samgov-usaspending-for-federal-contracts-no-api-key-in-python</loc><lastmod>2026-04-18T21:00:02.366Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/pt/news/scraping-samgov-usaspending-for-federal-contracts-no-api-key-in-python</loc><lastmod>2026-04-18T21:00:02.366Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/es/news/scraping-samgov-usaspending-for-federal-contracts-no-api-key-in-python</loc><lastmod>2026-04-18T21:00:02.366Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/fr/news/scraping-samgov-usaspending-for-federal-contracts-no-api-key-in-python</loc><lastmod>2026-04-18T21:00:02.366Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/de/news/scraping-samgov-usaspending-for-federal-contracts-no-api-key-in-python</loc><lastmod>2026-04-18T21:00:02.366Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/zh/news/scraping-samgov-usaspending-for-federal-contracts-no-api-key-in-python</loc><lastmod>2026-04-18T21:00:02.366Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/en/news/building-a-centralized-ai-tool-aggregator-architecture-api-normalization-and-latency-tradeoffs</loc><lastmod>2026-04-18T20:00:04.259Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/pt/news/building-a-centralized-ai-tool-aggregator-architecture-api-normalization-and-latency-tradeoffs</loc><lastmod>2026-04-18T20:00:04.259Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/es/news/building-a-centralized-ai-tool-aggregator-architecture-api-normalization-and-latency-tradeoffs</loc><lastmod>2026-04-18T20:00:04.259Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/fr/news/building-a-centralized-ai-tool-aggregator-architecture-api-normalization-and-latency-tradeoffs</loc><lastmod>2026-04-18T20:00:04.259Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/de/news/building-a-centralized-ai-tool-aggregator-architecture-api-normalization-and-latency-tradeoffs</loc><lastmod>2026-04-18T20:00:04.259Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/zh/news/building-a-centralized-ai-tool-aggregator-architecture-api-normalization-and-latency-tradeoffs</loc><lastmod>2026-04-18T20:00:04.259Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/en/news/kiwi-chans-coal-quest-a-tale-of-exploration-and-repeated-failure</loc><lastmod>2026-04-18T20:00:04.402Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/pt/news/kiwi-chans-coal-quest-a-tale-of-exploration-and-repeated-failure</loc><lastmod>2026-04-18T20:00:04.402Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/es/news/kiwi-chans-coal-quest-a-tale-of-exploration-and-repeated-failure</loc><lastmod>2026-04-18T20:00:04.402Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/fr/news/kiwi-chans-coal-quest-a-tale-of-exploration-and-repeated-failure</loc><lastmod>2026-04-18T20:00:04.402Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/de/news/kiwi-chans-coal-quest-a-tale-of-exploration-and-repeated-failure</loc><lastmod>2026-04-18T20:00:04.402Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/zh/news/kiwi-chans-coal-quest-a-tale-of-exploration-and-repeated-failure</loc><lastmod>2026-04-18T20:00:04.402Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/en/news/how-i-built-an-open-source-visual-qa-tool-after-every-ai-agent-i-tried-failed</loc><lastmod>2026-04-18T20:00:04.474Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/pt/news/how-i-built-an-open-source-visual-qa-tool-after-every-ai-agent-i-tried-failed</loc><lastmod>2026-04-18T20:00:04.474Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/es/news/how-i-built-an-open-source-visual-qa-tool-after-every-ai-agent-i-tried-failed</loc><lastmod>2026-04-18T20:00:04.474Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/fr/news/how-i-built-an-open-source-visual-qa-tool-after-every-ai-agent-i-tried-failed</loc><lastmod>2026-04-18T20:00:04.474Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/de/news/how-i-built-an-open-source-visual-qa-tool-after-every-ai-agent-i-tried-failed</loc><lastmod>2026-04-18T20:00:04.474Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
<url><loc>https://codenroll.dev/zh/news/how-i-built-an-open-source-visual-qa-tool-after-every-ai-agent-i-tried-failed</loc><lastmod>2026-04-18T20:00:04.474Z</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url>
</urlset>