<?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://devvnull.vercel.app/en</loc>
<lastmod>2026-03-30T23:53:46.134Z</lastmod>
<changefreq>daily</changefreq>
<priority>1</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog</loc>
<lastmod>2026-03-30T23:53:46.134Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/projects</loc>
<lastmod>2026-03-30T23:53:46.134Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/guestbook</loc>
<lastmod>2026-03-30T23:53:46.134Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id</loc>
<lastmod>2026-03-30T23:53:46.134Z</lastmod>
<changefreq>daily</changefreq>
<priority>1</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog</loc>
<lastmod>2026-03-30T23:53:46.134Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/projects</loc>
<lastmod>2026-03-30T23:53:46.134Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/guestbook</loc>
<lastmod>2026-03-30T23:53:46.134Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/angular-fundamentals-core-concepts</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/angular-fundamentals-core-concepts/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-27T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/ansible-idempotency-production-automation</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/ansible-idempotency-production-automation/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/argocd-gitops-kubernetes-deployment-guide</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/argocd-gitops-kubernetes-deployment-guide/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/astrojs-fundamentals-core-concepts</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/astrojs-fundamentals-core-concepts/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-27T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/bgp-ospf-advanced-routing-guide</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/bgp-ospf-advanced-routing-guide/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/building-comprehensive-restful-api-nestjs</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/building-comprehensive-restful-api-nestjs/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-19T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/cloudflare-secure-web-and-ssh-access-to-private-infrastructure-using-cloudflare-tunnel-docker-based</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/cloudflare-secure-web-and-ssh-access-to-private-infrastructure-using-cloudflare-tunnel-docker-based/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-01-07T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/database-indexing-guide-algorithms-implementation</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/database-indexing-guide-algorithms-implementation/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/database-types-guide-sql-nosql-cache-vector-search</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/database-types-guide-sql-nosql-cache-vector-search/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/docker-multi-stage-builds-production-optimization</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/docker-multi-stage-builds-production-optimization/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/docker-swarm-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/docker-swarm-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-28T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/elasticsearch-fundamentals-nestjs</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/elasticsearch-fundamentals-nestjs/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-24T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/example-shiki</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/example-shiki/thumbnail.png</image:loc>
</image:image>
<lastmod>2025-12-21T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/example-twoslash</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/example-shiki/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-05T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/fail2ban-deep-dive-automated-intrusion-prevention-linux</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/fail2ban-deep-dive-automated-intrusion-prevention-linux/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-05T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/git-history-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/git-history-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-25T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/github-actions-building-a-ci-pipeline-for-reactjs-application</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/github-actions-building-a-ci-pipeline-for-reactjs-application/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2025-12-09T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/github-actions-cicd-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/github-actions-cicd-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-25T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/graceful-shutdown-kubernetes</loc>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/graphql-complete-guide</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/graphql-complete-guide/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-02T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/grpc-complete-guide</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/grpc-complete-guide/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-02T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/hashicorp-vault-secret-management-production</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/hashicorp-vault-secret-management-production/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/helm-chart-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/helm-chart-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-28T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/iptables-deep-dive-linux-firewall-security-hardening</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/iptables-deep-dive-linux-firewall-security-hardening/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-05T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/jenkins-fundamentals-getting-started</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/jenkins-fundamentals-getting-started/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/k6-load-testing-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/k6-load-testing-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-25T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/kafka-fundamentals-nestjs</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/kafka-fundamentals-nestjs/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-23T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/karpenter-kubernetes-node-scaling-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/karpenter-kubernetes-node-scaling-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/keda-kubernetes-scaling-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/keda-kubernetes-scaling-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/kubernetes-resource-limits-requests-production-guide</loc>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-0-pre-requisite-skills-before-learning-kubernetes</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-0-pre-requisite-skills-before-learning-kubernetes/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2025-04-24T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-1-understanding-the-history-of-application-deployment-and-kubernetes</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-1-understanding-the-history-of-application-deployment-and-kubernetes/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2025-04-25T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-10-introduction-and-explanation-of-probe</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-10-introduction-and-explanation-of-probe/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-03-13T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-11-introduction-and-explanation-of-replication-controller</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-11-introduction-and-explanation-of-replication-controller/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-03-14T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-12-introduction-and-explanation-of-replica-set</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-12-introduction-and-explanation-of-replica-set/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-03-15T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-13-introduction-and-explanation-of-daemon-set</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-13-introduction-and-explanation-of-daemon-set/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-03-16T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-14-introduction-and-explanation-of-job</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-14-introduction-and-explanation-of-job/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-03-17T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-15-introduction-and-explanation-of-cron-job</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-15-introduction-and-explanation-of-cron-job/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-03-18T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-16-introduction-and-explanation-of-node-selector</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-16-introduction-and-explanation-of-node-selector/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-03-19T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-17-working-with-all-resources-in-kubernetes</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-17-working-with-all-resources-in-kubernetes/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-03-20T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-18-introduction-and-explanation-of-service</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-18-introduction-and-explanation-of-service/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-03-21T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-19-1-ingress-with-gateway-api</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-19-1-ingress-with-gateway-api/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-03-23T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-19-introduction-and-explanation-of-ingress</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-19-introduction-and-explanation-of-ingress/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-03-22T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-2-understanding-kubernetes-concepts-and-architecture</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-2-understanding-kubernetes-concepts-and-architecture/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2025-05-03T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-20-multi-container-pod-patterns</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-20-multi-container-pod-patterns/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-03-24T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-21-1-persistent-volume-and-persistent-volume-claim</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-21-1-persistent-volume-and-persistent-volume-claim/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-03-26T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-21-2-introduction-and-explanation-of-secret</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-21-2-introduction-and-explanation-of-secret/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-03-27T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-21-introduction-and-explanation-of-volume</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-21-introduction-and-explanation-of-volume/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-03-25T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-22-sharing-volume-between-pods</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-22-sharing-volume-between-pods/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-03-28T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-23-environment-variable</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-23-environment-variable/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-03-29T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-24-downward-api</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-24-downward-api/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-03-30T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-25-managing-kubernetes-objects</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-25-managing-kubernetes-objects/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-03-31T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-26-introduction-and-explanation-of-deployment</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-26-introduction-and-explanation-of-deployment/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-04-01T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-27-introduction-and-explanation-of-stateful-set</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-27-introduction-and-explanation-of-stateful-set/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-04-02T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-28-introduction-and-explanation-of-kubernetes-dashboard</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-28-introduction-and-explanation-of-kubernetes-dashboard/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-04-03T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-29-introduction-and-explanation-of-computational-resources</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-29-introduction-and-explanation-of-computational-resources/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-04-04T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-3-installing-kubernetes-cluster-master-and-worker-nodes</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-3-installing-kubernetes-cluster-master-and-worker-nodes/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2025-05-11T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-30-introduction-and-explanation-of-horizontal-pod-autoscaler</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-30-introduction-and-explanation-of-horizontal-pod-autoscaler/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-04-05T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-31-introduction-and-explanation-of-vertical-pod-autoscaler</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-31-introduction-and-explanation-of-vertical-pod-autoscaler/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-04-06T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-32-introduction-and-explanation-of-serviceaccount</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-32-introduction-and-explanation-of-serviceaccount/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-04-07T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-33-introduction-and-explanation-of-rbac-and-role-binding</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-33-introduction-and-explanation-of-rbac-and-role-binding/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-04-08T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-34-introduction-and-explanation-of-taints-and-tolerations</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-34-introduction-and-explanation-of-taints-and-tolerations/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-04-09T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-35-introduction-and-explanation-of-affinity-and-anti-affinity</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-35-introduction-and-explanation-of-affinity-and-anti-affinity/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-04-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-36-introduction-and-explanation-of-network-policy</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-36-introduction-and-explanation-of-network-policy/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-04-11T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-37-introduction-and-explanation-of-pod-security-context</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-37-introduction-and-explanation-of-pod-security-context/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-04-12T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-38-introduction-and-explanation-of-helm-charts</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-38-introduction-and-explanation-of-helm-charts/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-04-13T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-39-introduction-and-explanation-of-kustomize</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-39-introduction-and-explanation-of-kustomize/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-04-14T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-4-introduction-and-explanation-of-node-object</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-4-introduction-and-explanation-of-node-object/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2025-06-13T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-40-introduction-and-explanation-of-gitops</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-40-introduction-and-explanation-of-gitops/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-04-15T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-41-introduction-and-explanation-of-external-secret-manager</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-41-introduction-and-explanation-of-external-secret-manager/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-04-16T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-42-introduction-and-explanation-of-observability</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-42-introduction-and-explanation-of-observability/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-04-17T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-43-introduction-and-explanation-of-service-mesh</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-43-introduction-and-explanation-of-service-mesh/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-04-18T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-5-introduction-and-explanation-of-pod-object</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-5-introduction-and-explanation-of-pod-object/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2025-09-20T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-6-introduction-and-explanation-of-label-object</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-6-introduction-and-explanation-of-label-object/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-02-28T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-7-introduction-and-explanation-of-annotation-object</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-7-introduction-and-explanation-of-annotation-object/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-03-05T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-8-introduction-and-explanation-of-namespace-object</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-8-introduction-and-explanation-of-namespace-object/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-03-11T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/learning-kubernetes-episode-9-deleting-pods-in-kubernetes</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-9-deleting-pods-in-kubernetes/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-03-12T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/linux-bash-scripting-advanced-episode-5</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/linux-bash-scripting-advanced-episode-5/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-20T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/linux-fundamentals-history-episode-1</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/linux-fundamentals-history-episode-1/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-20T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/linux-kernel-cgroups-namespaces-episode-2</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/linux-kernel-cgroups-namespaces-episode-2/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-20T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/linux-permissions-users-groups-episode-3</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/linux-permissions-users-groups-episode-3/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-20T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/linux-shell-bash-fundamentals-episode-4</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/linux-shell-bash-fundamentals-episode-4/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-20T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/livewire-laravel-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/livewire-laravel-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-27T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/mastering-sql-joins-and-relationships-in-postgresql</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/mastering-sql-joins-and-relationships-in-postgresql/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-16T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/migrating-blog-to-mdx-with-shiki-and-rehype</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/migrating-blog-to-mdx-with-shiki-and-rehype/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-12T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/mikrotik-use-dns-over-https</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/mikrotik-use-dns-over-https/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-01-27T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/mlops-production-machine-learning-systems</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/mlops-production-machine-learning-systems/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/modern-authentication-oauth2-sso-guide</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/modern-authentication-oauth2-sso-guide/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-16T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/modern-data-lakehouse-architecture-evolution</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/modern-data-lakehouse-architecture-evolution/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/mongodb-fundamentals-nestjs</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/mongodb-fundamentals-nestjs/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-25T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/nestjs-getting-started-build-rest-api</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/nestjs-getting-started-build-rest-api/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-13T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/nextjs-fullstack-ssr-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/nextjs-fullstack-ssr-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-27T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/nextjs-rendering-strategies-csr-ssr-isr-ssg</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/nextjs-rendering-strategies-csr-ssr-isr-ssg/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/nginx-api-gateway-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/nginx-api-gateway-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-25T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/nuxtjs-fullstack-ssr-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/nuxtjs-fullstack-ssr-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-27T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/object-oriented-programming-php-guide</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/object-oriented-programming-php-guide/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-17T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/observability-sre-deep-dive-comprehensive</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/observability-sre-deep-dive-comprehensive/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-04T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/observability-vs-monitoring-production-visibility</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/observability-vs-monitoring-production-visibility/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/opentelemetry-deep-dive-nestjs</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/opentelemetry-deep-dive-nestjs/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-03T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/osi-model-fundamentals-complete-guide</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/osi-model-fundamentals-complete-guide/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-13T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/playwright-e2e-testing-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/playwright-e2e-testing-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-25T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/rabbitmq-fundamentals-nestjs</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/rabbitmq-fundamentals-nestjs/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-22T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/react-fundamentals-core-concepts</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/react-fundamentals-core-concepts/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-27T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/realtime-chat-app-best-practices</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/realtime-chat-app-best-practices/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-25T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/redis-fundamentals-nestjs</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/redis-fundamentals-nestjs/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-21T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/remix-fullstack-ssr-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/remix-fullstack-ssr-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-27T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/service-mesh-deployment-strategies</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/service-mesh-deployment-strategies/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/show-styling-markdown</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/example-shiki/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-05T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/soap-protocol-deep-dive-with-nestjs</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/soap-protocol-deep-dive-with-nestjs/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-02T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/svelte-fundamentals-core-concepts</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/svelte-fundamentals-core-concepts/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-27T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/sveltekit-fullstack-ssr-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/sveltekit-fullstack-ssr-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-27T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/syntax-highlighting</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/example-shiki/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-05T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/tanstack-start-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/tanstack-start-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-20T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/terraform-state-management-production-guide</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/terraform-state-management-production-guide/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/trpc-complete-guide-with-nestjs</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/trpc-complete-guide-with-nestjs/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-02T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/typescript-complete-guide</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/typescript-complete-guide/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-20T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/ubuntu-24-04-install-docker</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/ubuntu-24-04-install-docker/thumbnail-en.png</image:loc>
</image:image>
<lastmod>2026-01-06T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/vuejs-fundamentals-core-concepts</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/vuejs-fundamentals-core-concepts/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-28T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/blog/websocket-complete-guide-with-nestjs</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/websocket-complete-guide-with-nestjs/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-02T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/angular-fundamentals-core-concepts</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/angular-fundamentals-core-concepts/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-27T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/ansible-idempotency-production-automation</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/ansible-idempotency-production-automation/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/archlinux-apache-config-untuk-htaccess</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/archlinux-apache-config-untuk-htaccess/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-01-23T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/archlinux-install-xdebug</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/archlinux-install-xdebug/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-02-28T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/argocd-gitops-kubernetes-deployment-guide</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/argocd-gitops-kubernetes-deployment-guide/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/astrojs-fundamentals-core-concepts</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/astrojs-fundamentals-core-concepts/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-27T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/bgp-ospf-advanced-routing-guide</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/bgp-ospf-advanced-routing-guide/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/building-comprehensive-restful-api-nestjs</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/building-comprehensive-restful-api-nestjs/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-19T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/cacti-install-cacti-di-ubuntu-server</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/cacti-install-cacti-di-ubuntu-server/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-08-29T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/cara-membuat-vlan-pada-interface-router-cisco</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/cara-membuat-vlan-pada-interface-router-cisco/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-01-16T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/cloud-computing</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/cloud-computing/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-10-28T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/cloud-run-github-actions</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/cloud-run-github-actions/thumbnail.png</image:loc>
</image:image>
<lastmod>2024-05-05T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/cloudflare-secure-web-and-ssh-access-to-private-infrastructure-using-cloudflare-tunnel-docker-based</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/cloudflare-secure-web-and-ssh-access-to-private-infrastructure-using-cloudflare-tunnel-docker-based/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-01-07T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/codeigniter-configurasi-dasar</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/codeigniter-configurasi-dasar/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-02-03T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/codeigniter-hosting-di-cpanel</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/codeigniter-hosting-di-cpanel/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-03-20T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/cpanel-error-401</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/cpanel-error-401/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-06-26T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/css-belajar-css</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/css-belajar-css/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-10-09T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/database-indexing-guide-algorithms-implementation</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/database-indexing-guide-algorithms-implementation/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/database-types-guide-sql-nosql-cache-vector-search</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/database-types-guide-sql-nosql-cache-vector-search/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/dns-cara-kerja-dan-jenis-jenis-record</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/dns-cara-kerja-dan-jenis-jenis-record/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-07-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/docker-multi-stage-builds-production-optimization</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/docker-multi-stage-builds-production-optimization/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/docker-swarm-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/docker-swarm-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-28T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/domain-pointing-ke-vps</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/domain-pointing-ke-vps/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-07-20T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/elasticsearch-fundamentals-nestjs</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/elasticsearch-fundamentals-nestjs/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-24T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/email-instalasi-dan-konfigurasi-mail-server-dengan-postfix-dovecot-roundcube</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/email-instalasi-dan-konfigurasi-mail-server-dengan-postfix-dovecot-roundcube/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-08-22T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/fail2ban-deep-dive-automated-intrusion-prevention-linux</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/fail2ban-deep-dive-automated-intrusion-prevention-linux/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-05T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/git-github-menambahkan-ssh-key</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/git-github-menambahkan-ssh-key/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-10-30T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/git-github-multiple-user-account</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/git-github-multiple-user-account/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-01-16T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/git-history-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/git-history-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-25T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/git-kembali-ke-commit-sebelumnya</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/git-kembali-ke-commit-sebelumnya/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-01-16T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/git-squash-commit</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/git-squash-commit/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-01-16T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/github-actions-building-a-ci-pipeline-for-reactjs-application</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/github-actions-building-a-ci-pipeline-for-reactjs-application/thumbnail.png</image:loc>
</image:image>
<lastmod>2025-12-09T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/github-actions-cicd-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/github-actions-cicd-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-25T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/graphql-complete-guide</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/graphql-complete-guide/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-02T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/grpc-complete-guide</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/grpc-complete-guide/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-02T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/hashicorp-vault-secret-management-production</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/hashicorp-vault-secret-management-production/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/helm-chart-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/helm-chart-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-28T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/iptables-deep-dive-linux-firewall-security-hardening</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/iptables-deep-dive-linux-firewall-security-hardening/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-05T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/jenkins-fundamentals-getting-started</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/jenkins-fundamentals-getting-started/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/k6-load-testing-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/k6-load-testing-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-25T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/kafka-fundamentals-nestjs</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/kafka-fundamentals-nestjs/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-23T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/karpenter-kubernetes-node-scaling-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/karpenter-kubernetes-node-scaling-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/keda-kubernetes-scaling-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/keda-kubernetes-scaling-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/konfigurasi-vlan-access-pada-switch-cisco</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/konfigurasi-vlan-access-pada-switch-cisco/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-01-16T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/konfigurasi-vlan-trunk-pada-switch-cisco</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/konfigurasi-vlan-trunk-pada-switch-cisco/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-01-16T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel-eloquent-relationship-advanced-has-one-of-many</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel-eloquent-relationship-advanced-has-one-of-many/thumbnail.png</image:loc>
</image:image>
<lastmod>2024-01-29T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel-eloquent-relationship-default-models</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel-eloquent-relationship-default-models/thumbnail.png</image:loc>
</image:image>
<lastmod>2024-01-21T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel-eloquent-relationship-has-one-of-many</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel-eloquent-relationship-has-one-of-many/thumbnail.png</image:loc>
</image:image>
<lastmod>2024-01-27T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel-eloquent-relationship-has-one-through</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel-eloquent-relationship-has-one-through/thumbnail.png</image:loc>
</image:image>
<lastmod>2024-02-03T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel-eloquent-relationship-one-to-many</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel-eloquent-relationship-one-to-many/thumbnail.png</image:loc>
</image:image>
<lastmod>2024-01-21T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel-eloquent-relationship-one-to-one</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel-eloquent-relationship-one-to-one/thumbnail.png</image:loc>
</image:image>
<lastmod>2024-01-19T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel-eloquent-relationship-where-belongs-to</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel-eloquent-relationship-where-belongs-to/thumbnail.png</image:loc>
</image:image>
<lastmod>2024-01-23T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel8-apa-itu-laravel</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel8-apa-itu-laravel/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-12-18T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel8-authorization</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel8-authorization/thumbnail.png</image:loc>
</image:image>
<lastmod>2024-01-06T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel8-blade-templating-engine</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel8-blade-templating-engine/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-12-20T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel8-create-post-form</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel8-create-post-form/thumbnail.png</image:loc>
</image:image>
<lastmod>2024-01-02T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel8-dashboard-ui</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel8-dashboard-ui/thumbnail.png</image:loc>
</image:image>
<lastmod>2024-01-01T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel8-database-migration-dan-eloquent</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel8-database-migration-dan-eloquent/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-12-22T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel8-database-seeder</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel8-database-seeder/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-12-25T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel8-factory-dan-faker</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel8-factory-dan-faker/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-12-26T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel8-instalasi-dan-konfigurasi</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel8-instalasi-dan-konfigurasi/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-12-19T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel8-model-collection-dan-controller</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel8-model-collection-dan-controller/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-12-21T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel8-n1-problem</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel8-n1-problem/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-12-27T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel8-post-category-dan-eloquent-relationship</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel8-post-category-dan-eloquent-relationship/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-12-24T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel8-post-model-dan-route-model-binding</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel8-post-model-dan-route-model-binding/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-12-23T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel8-preview-update-dan-delete-image</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel8-preview-update-dan-delete-image/thumbnail.png</image:loc>
</image:image>
<lastmod>2024-01-05T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel8-redesign-ui</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel8-redesign-ui/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-12-28T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel8-searching-dan-pagination</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel8-searching-dan-pagination/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-12-29T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel8-struktur-folder-routes-dan-view</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel8-struktur-folder-routes-dan-view/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-12-20T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel8-update-dan-delete-post</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel8-update-dan-delete-post/thumbnail.png</image:loc>
</image:image>
<lastmod>2024-01-03T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel8-upload-image</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel8-upload-image/thumbnail.png</image:loc>
</image:image>
<lastmod>2024-01-05T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel8-user-login-dan-middleware</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel8-user-login-dan-middleware/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-12-31T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel8-user-registration</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel8-user-registration/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-12-30T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel8-validation-dan-insert-post</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel8-validation-dan-insert-post/thumbnail.png</image:loc>
</image:image>
<lastmod>2024-01-03T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/laravel8-view-login-dan-registration</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/laravel8-view-login-dan-registration/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-12-30T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-0-pre-requisite-skills-before-learning-kubernetes</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-0-pre-requisite-skills-before-learning-kubernetes/thumbnail.png</image:loc>
</image:image>
<lastmod>2025-04-24T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-1-understanding-the-history-of-application-deployment-and-kubernetes</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-1-understanding-the-history-of-application-deployment-and-kubernetes/thumbnail.png</image:loc>
</image:image>
<lastmod>2025-04-25T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-10-introduction-and-explanation-of-probe</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-10-introduction-and-explanation-of-probe/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-13T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-11-introduction-and-explanation-of-replication-controller</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-11-introduction-and-explanation-of-replication-controller/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-14T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-12-introduction-and-explanation-of-replica-set</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-12-introduction-and-explanation-of-replica-set/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-15T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-13-introduction-and-explanation-of-daemon-set</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-13-introduction-and-explanation-of-daemon-set/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-16T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-14-introduction-and-explanation-of-job</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-14-introduction-and-explanation-of-job/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-17T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-15-introduction-and-explanation-of-cron-job</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-15-introduction-and-explanation-of-cron-job/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-18T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-16-introduction-and-explanation-of-node-selector</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-16-introduction-and-explanation-of-node-selector/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-19T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-17-working-with-all-resources-in-kubernetes</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-17-working-with-all-resources-in-kubernetes/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-20T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-18-introduction-and-explanation-of-service</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-18-introduction-and-explanation-of-service/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-21T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-19-1-ingress-with-gateway-api</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-19-1-ingress-with-gateway-api/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-23T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-19-introduction-and-explanation-of-ingress</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-19-introduction-and-explanation-of-ingress/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-22T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-2-understanding-kubernetes-concepts-and-architecture</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-2-understanding-kubernetes-concepts-and-architecture/thumbnail.png</image:loc>
</image:image>
<lastmod>2025-05-03T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-20-multi-container-pod-patterns</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-20-multi-container-pod-patterns/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-24T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-21-1-persistent-volume-and-persistent-volume-claim</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-21-1-persistent-volume-and-persistent-volume-claim/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-26T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-21-2-introduction-and-explanation-of-secret</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-21-2-introduction-and-explanation-of-secret/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-27T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-21-introduction-and-explanation-of-volume</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-21-introduction-and-explanation-of-volume/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-25T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-22-sharing-volume-between-pods</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-22-sharing-volume-between-pods/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-28T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-23-environment-variable</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-23-environment-variable/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-29T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-24-downward-api</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-24-downward-api/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-30T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-25-managing-kubernetes-objects</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-25-managing-kubernetes-objects/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-31T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-26-introduction-and-explanation-of-deployment</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-26-introduction-and-explanation-of-deployment/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-04-01T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-27-introduction-and-explanation-of-stateful-set</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-27-introduction-and-explanation-of-stateful-set/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-04-02T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-28-introduction-and-explanation-of-kubernetes-dashboard</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-28-introduction-and-explanation-of-kubernetes-dashboard/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-04-03T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-29-introduction-and-explanation-of-computational-resources</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-29-introduction-and-explanation-of-computational-resources/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-04-04T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-3-installing-kubernetes-cluster-master-and-worker-nodes</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-3-installing-kubernetes-cluster-master-and-worker-nodes/thumbnail.png</image:loc>
</image:image>
<lastmod>2025-05-11T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-30-introduction-and-explanation-of-horizontal-pod-autoscaler</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-30-introduction-and-explanation-of-horizontal-pod-autoscaler/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-04-05T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-31-introduction-and-explanation-of-vertical-pod-autoscaler</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-31-introduction-and-explanation-of-vertical-pod-autoscaler/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-04-06T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-32-introduction-and-explanation-of-serviceaccount</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-32-introduction-and-explanation-of-serviceaccount/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-04-07T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-33-introduction-and-explanation-of-rbac-and-role-binding</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-33-introduction-and-explanation-of-rbac-and-role-binding/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-04-08T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-34-introduction-and-explanation-of-taints-and-tolerations</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-34-introduction-and-explanation-of-taints-and-tolerations/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-04-09T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-35-introduction-and-explanation-of-affinity-and-anti-affinity</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-35-introduction-and-explanation-of-affinity-and-anti-affinity/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-04-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-36-introduction-and-explanation-of-network-policy</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-36-introduction-and-explanation-of-network-policy/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-04-11T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-37-introduction-and-explanation-of-pod-security-context</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-37-introduction-and-explanation-of-pod-security-context/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-04-12T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-38-introduction-and-explanation-of-helm-charts</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-38-introduction-and-explanation-of-helm-charts/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-04-13T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-39-introduction-and-explanation-of-kustomize</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-39-introduction-and-explanation-of-kustomize/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-04-14T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-4-introduction-and-explanation-of-node-object</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-4-introduction-and-explanation-of-node-object/thumbnail.png</image:loc>
</image:image>
<lastmod>2025-06-13T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-40-introduction-and-explanation-of-gitops</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-40-introduction-and-explanation-of-gitops/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-04-15T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-41-introduction-and-explanation-of-external-secret-manager</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-41-introduction-and-explanation-of-external-secret-manager/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-04-16T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-42-introduction-and-explanation-of-observability</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-42-introduction-and-explanation-of-observability/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-04-17T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-43-introduction-and-explanation-of-service-mesh</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-43-introduction-and-explanation-of-service-mesh/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-04-18T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-5-introduction-and-explanation-of-pod-object</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-5-introduction-and-explanation-of-pod-object/thumbnail.png</image:loc>
</image:image>
<lastmod>2025-09-20T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-6-introduction-and-explanation-of-label-object</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-6-introduction-and-explanation-of-label-object/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-28T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-7-introduction-and-explanation-of-annotation-object</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-7-introduction-and-explanation-of-annotation-object/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-05T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-8-introduction-and-explanation-of-namespace-object</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-8-introduction-and-explanation-of-namespace-object/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-11T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/learning-kubernetes-episode-9-deleting-pods-in-kubernetes</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/learning-kubernetes-episode-9-deleting-pods-in-kubernetes/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-12T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/linux-bash-scripting-advanced-episode-5</loc>
<lastmod>2026-02-20T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/linux-fundamentals-history-episode-1</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/linux-fundamentals-history-episode-1/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-20T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/linux-kernel-cgroups-namespaces-episode-2</loc>
<lastmod>2026-02-20T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/linux-permissions-users-groups-episode-3</loc>
<lastmod>2026-02-20T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/linux-shell-bash-fundamentals-episode-4</loc>
<lastmod>2026-02-20T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/livewire-laravel-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/livewire-laravel-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-27T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/mastering-sql-joins-and-relationships-in-postgresql</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/mastering-sql-joins-and-relationships-in-postgresql/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-16T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/migrating-blog-to-mdx-with-shiki-and-rehype</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/migrating-blog-to-mdx-with-shiki-and-rehype/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-12T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/mikrotik-basic-configuration</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/mikrotik-basic-configuration/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-01-16T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/mikrotik-use-dns-over-https</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/mikrotik-use-dns-over-https/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-01-27T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/mlops-production-machine-learning-systems</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/mlops-production-machine-learning-systems/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/modern-authentication-oauth2-sso-guide</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/modern-authentication-oauth2-sso-guide/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-16T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/modern-data-lakehouse-architecture-evolution</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/modern-data-lakehouse-architecture-evolution/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/mongodb-fundamentals-nestjs</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/mongodb-fundamentals-nestjs/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-25T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/monitoring-instalasi-dan-konfigurasi-monitoring-server-menggunakan-grafana-dan-prometheus</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/monitoring-instalasi-dan-konfigurasi-monitoring-server-menggunakan-grafana-dan-prometheus/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-08-24T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/nestjs-getting-started-build-rest-api</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/nestjs-getting-started-build-rest-api/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-13T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/nextjs-fullstack-ssr-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/nextjs-fullstack-ssr-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-27T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/nextjs-rendering-strategies-csr-ssr-isr-ssg</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/nextjs-rendering-strategies-csr-ssr-isr-ssg/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/nginx-api-gateway-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/nginx-api-gateway-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-25T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/nuxtjs-fullstack-ssr-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/nuxtjs-fullstack-ssr-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-27T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/object-oriented-programming-php-guide</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/object-oriented-programming-php-guide/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-17T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/observability-sre-deep-dive-comprehensive</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/observability-sre-deep-dive-comprehensive/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-04T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/observability-vs-monitoring-production-visibility</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/observability-vs-monitoring-production-visibility/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/olt-command</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/olt-command/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-01-17T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/olt-registrasi-onu</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/olt-registrasi-onu/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-01-17T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/opentelemetry-deep-dive-nestjs</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/opentelemetry-deep-dive-nestjs/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-03T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/osi-model-fundamentals-complete-guide</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/osi-model-fundamentals-complete-guide/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-13T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/php-js-select-option-form-input</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/php-js-select-option-form-input/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-01-23T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/php-object-oriented-programming</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/php-object-oriented-programming/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-01-17T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/playwright-e2e-testing-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/playwright-e2e-testing-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-25T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/powerbeam-m5-400-sebagai-client</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/powerbeam-m5-400-sebagai-client/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-04-22T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/powerdns-authoritative-server-sebagai-recursor-untuk-client-dan-melayani-public-domain</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/powerdns-authoritative-server-sebagai-recursor-untuk-client-dan-melayani-public-domain/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-07-31T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/powerdns-instalasi</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/powerdns-instalasi/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-07-03T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/powerdns-master-dan-slave</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/powerdns-master-dan-slave/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-07-13T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/powerdns-menambahkan-records</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/powerdns-menambahkan-records/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-07-11T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/powershell-install-neovim-dengan-scoop</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/powershell-install-neovim-dengan-scoop/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-01-23T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/powershell-install-oh-my-posh</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/powershell-install-oh-my-posh/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-01-23T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/protokol-email-yang-perlu-diketahui</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/protokol-email-yang-perlu-diketahui/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-08-14T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/proxmox-installation-process</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/proxmox-installation-process/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-06-25T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/rabbitmq-fundamentals-nestjs</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/rabbitmq-fundamentals-nestjs/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-22T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/react-fundamentals-core-concepts</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/react-fundamentals-core-concepts/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-27T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/realtime-chat-app-best-practices</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/realtime-chat-app-best-practices/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-25T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/redis-fundamentals-nestjs</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/redis-fundamentals-nestjs/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-21T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/remix-fullstack-ssr-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/remix-fullstack-ssr-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-27T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/service-mesh-deployment-strategies</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/service-mesh-deployment-strategies/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/sistem-basis-data-1</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/sistem-basis-data-1/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-10-05T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/soap-protocol-deep-dive-with-nestjs</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/soap-protocol-deep-dive-with-nestjs/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-02T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/svelte-fundamentals-core-concepts</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/svelte-fundamentals-core-concepts/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-27T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/sveltekit-fullstack-ssr-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/sveltekit-fullstack-ssr-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-27T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/tanstack-start-fundamentals</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/tanstack-start-fundamentals/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-20T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/terraform-otomatisasi-deployment-infastructure-menggunakan-terraform</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/terraform-otomatisasi-deployment-infastructure-menggunakan-terraform/thumbnail.png</image:loc>
</image:image>
<lastmod>2024-03-31T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/terraform-state-management-production-guide</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/terraform-state-management-production-guide/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/test</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/test/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-10-28T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/trpc-complete-guide-with-nestjs</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/trpc-complete-guide-with-nestjs/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-02T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/tutorial-docker-instalasi-windows-11</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/tutorial-docker-instalasi-windows-11/thumbnail.png</image:loc>
</image:image>
<lastmod>2024-02-16T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/typescript-belajar-typescript</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/typescript-belajar-typescript/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-10-15T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/typescript-complete-guide</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/typescript-complete-guide/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-20T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/ubuntu-instalasi-dan-konfigurasi-lemp-stack</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/ubuntu-instalasi-dan-konfigurasi-lemp-stack/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-08-29T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/ubuntu-server-instalasi-ubuntu-server</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/ubuntu-server-instalasi-ubuntu-server/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-06-20T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/vmware-workstation-player-instalasi-di-windows11</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/vmware-workstation-player-instalasi-di-windows11/thumbnail.png</image:loc>
</image:image>
<lastmod>2024-02-07T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/vmware-workstation-player-instalasi-linux-debian</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/vmware-workstation-player-instalasi-linux-debian/thumbnail.png</image:loc>
</image:image>
<lastmod>2024-02-16T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/vmware-workstation-player-membuat-virtual-machine</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/vmware-workstation-player-membuat-virtual-machine/thumbnail.png</image:loc>
</image:image>
<lastmod>2024-02-16T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/vuejs-fundamentals-core-concepts</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/vuejs-fundamentals-core-concepts/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-02-28T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/websocket-complete-guide-with-nestjs</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/websocket-complete-guide-with-nestjs/thumbnail.png</image:loc>
</image:image>
<lastmod>2026-03-02T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/xampp-menambahkan-xdebug</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/xampp-menambahkan-xdebug/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-01-24T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/blog/xampp-phpmyadmin-allow-ip-from-remote-access</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/blogs/posts/xampp-phpmyadmin-allow-ip-from-remote-access/thumbnail.png</image:loc>
</image:image>
<lastmod>2023-02-12T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/projects/awesomeshot</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/awesomeshot/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/awesomeshot/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/awesomeshot/3.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/awesomeshot/4.gif</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/awesomeshot/5.gif</image:loc>
</image:image>
<lastmod>2022-02-19T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/projects/beasiswa</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/beasiswa/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/beasiswa/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/beasiswa/3.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/beasiswa/4.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/beasiswa/5.png</image:loc>
</image:image>
<lastmod>2023-06-14T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/projects/buildwithangga</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/buildwithangga/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/buildwithangga/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/buildwithangga/3.png</image:loc>
</image:image>
<lastmod>2024-11-30T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/projects/citra-jelajah-informatika</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/citra-jelajah-informatika/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/citra-jelajah-informatika/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/citra-jelajah-informatika/3.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/citra-jelajah-informatika/4.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/citra-jelajah-informatika/5.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/citra-jelajah-informatika/6.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/citra-jelajah-informatika/7.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/citra-jelajah-informatika/8.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/citra-jelajah-informatika/9.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/citra-jelajah-informatika/10.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/citra-jelajah-informatika/11.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/citra-jelajah-informatika/12.jpg</image:loc>
</image:image>
<lastmod>2023-10-31T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/projects/dummy-1</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio/3.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio/4.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio/5.png</image:loc>
</image:image>
<lastmod>2024-01-01T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/projects/dummy-2</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio/3.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio/4.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio/5.png</image:loc>
</image:image>
<lastmod>2024-01-01T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/projects/dummy-3</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio/3.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio/4.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio/5.png</image:loc>
</image:image>
<lastmod>2024-01-01T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/projects/dummy-4</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio/3.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio/4.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio/5.png</image:loc>
</image:image>
<lastmod>2024-01-01T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/projects/dummy-5</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio/3.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio/4.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio/5.png</image:loc>
</image:image>
<lastmod>2024-01-01T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/projects/e-perpus-solo</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/e-perpus-solo/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/e-perpus-solo/2.png</image:loc>
</image:image>
<lastmod>2023-11-29T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/projects/express-otel</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/express-otel/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/express-otel/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/express-otel/3.png</image:loc>
</image:image>
<lastmod>2025-09-20T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/projects/finboost-backend</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/finboost-backend/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/finboost-backend/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/finboost-backend/3.gif</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/finboost-backend/4.gif</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/finboost-backend/5.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/finboost-backend/6.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/finboost-backend/7.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/finboost-backend/8.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/finboost-backend/9.png</image:loc>
</image:image>
<lastmod>2024-05-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/projects/gis-application</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/gis-ui/1.png</image:loc>
</image:image>
<lastmod>2025-11-17T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/projects/laracamp</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/laracamp/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/laracamp/2.png</image:loc>
</image:image>
<lastmod>2024-07-07T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/projects/magabwa</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/magabwa/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/magabwa/2.png</image:loc>
</image:image>
<lastmod>2024-08-17T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/projects/mytermux</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/mytermux/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/mytermux/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/mytermux/3.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/mytermux/4.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/mytermux/5.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/mytermux/8.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/mytermux/9.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/mytermux/10.png</image:loc>
</image:image>
<lastmod>2021-01-24T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/projects/nestjs-boilerplate</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/nestjs-boilerplate/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/nestjs-boilerplate/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/nestjs-boilerplate/3.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/nestjs-boilerplate/4.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/nestjs-boilerplate/5.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/nestjs-boilerplate/6.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/nestjs-boilerplate/7.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/nestjs-boilerplate/8.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/nestjs-boilerplate/9.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/nestjs-boilerplate/10.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/nestjs-boilerplate/11.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/nestjs-boilerplate/12.png</image:loc>
</image:image>
<lastmod>2026-03-06T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/projects/openai-project</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/openai-project/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/openai-project/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/openai-project/3.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/openai-project/4.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/openai-project/5.png</image:loc>
</image:image>
<lastmod>2022-12-15T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/projects/portfolio-v1</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v1/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v1/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v1/3.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v1/4.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v1/5.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v1/6.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v1/7.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v1/8.png</image:loc>
</image:image>
<lastmod>2022-01-20T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/projects/portfolio-v2</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v2/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v2/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v2/3.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v2/4.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v2/5.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v2/6.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v2/7.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v2/8.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v2/9.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v2/10.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v2/11.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v2/12.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v2/13.png</image:loc>
</image:image>
<lastmod>2023-10-24T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/projects/portfolio-v3</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v3/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v3/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v3/3.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v3/4.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v3/5.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v3/6.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v3/7.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v3/8.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v3/9.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v3/10.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v3/11.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v3/12.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v3/13.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v3/14.png</image:loc>
</image:image>
<lastmod>2025-12-17T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/projects/sovware-data-mandiri</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/sovware-data-mandiri/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/sovware-data-mandiri/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/sovware-data-mandiri/3.png</image:loc>
</image:image>
<lastmod>2025-11-30T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/projects/vba-toko-alat-olahraga</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/vba-toko-alat-olahraga/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/vba-toko-alat-olahraga/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/vba-toko-alat-olahraga/3.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/vba-toko-alat-olahraga/4.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/vba-toko-alat-olahraga/5.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/vba-toko-alat-olahraga/6.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/vba-toko-alat-olahraga/7.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/vba-toko-alat-olahraga/8.png</image:loc>
</image:image>
<lastmod>2023-04-28T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/en/projects/velora</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/velora/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/velora/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/velora/3.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/velora/4.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/velora/5.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/velora/6.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/velora/7.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/velora/8.png</image:loc>
</image:image>
<lastmod>2025-12-21T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/projects/awesomeshot</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/awesomeshot/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/awesomeshot/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/awesomeshot/3.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/awesomeshot/4.gif</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/awesomeshot/5.gif</image:loc>
</image:image>
<lastmod>2022-02-19T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/projects/beasiswa</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/beasiswa/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/beasiswa/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/beasiswa/3.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/beasiswa/4.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/beasiswa/5.png</image:loc>
</image:image>
<lastmod>2023-06-14T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/projects/buildwithangga</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/buildwithangga/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/buildwithangga/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/buildwithangga/3.png</image:loc>
</image:image>
<lastmod>2024-11-30T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/projects/citra-jelajah-informatika</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/citra-jelajah-informatika/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/citra-jelajah-informatika/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/citra-jelajah-informatika/3.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/citra-jelajah-informatika/4.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/citra-jelajah-informatika/5.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/citra-jelajah-informatika/6.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/citra-jelajah-informatika/7.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/citra-jelajah-informatika/8.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/citra-jelajah-informatika/9.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/citra-jelajah-informatika/10.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/citra-jelajah-informatika/11.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/citra-jelajah-informatika/12.jpg</image:loc>
</image:image>
<lastmod>2023-10-31T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/projects/e-perpus-solo</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/e-perpus-solo/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/e-perpus-solo/2.png</image:loc>
</image:image>
<lastmod>2023-11-29T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/projects/express-otel</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/express-otel/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/express-otel/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/express-otel/3.png</image:loc>
</image:image>
<lastmod>2025-09-20T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/projects/finboost-backend</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/finboost-backend/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/finboost-backend/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/finboost-backend/3.gif</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/finboost-backend/4.gif</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/finboost-backend/5.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/finboost-backend/6.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/finboost-backend/7.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/finboost-backend/8.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/finboost-backend/9.png</image:loc>
</image:image>
<lastmod>2024-05-10T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/projects/gis-application</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/gis-ui/1.png</image:loc>
</image:image>
<lastmod>2025-11-17T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/projects/laracamp</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/laracamp/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/laracamp/2.png</image:loc>
</image:image>
<lastmod>2024-07-07T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/projects/magabwa</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/magabwa/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/magabwa/2.png</image:loc>
</image:image>
<lastmod>2024-08-17T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/projects/mytermux</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/mytermux/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/mytermux/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/mytermux/3.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/mytermux/4.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/mytermux/5.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/mytermux/8.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/mytermux/9.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/mytermux/10.png</image:loc>
</image:image>
<lastmod>2021-01-24T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/projects/nestjs-boilerplate</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/nestjs-boilerplate/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/nestjs-boilerplate/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/nestjs-boilerplate/3.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/nestjs-boilerplate/4.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/nestjs-boilerplate/5.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/nestjs-boilerplate/6.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/nestjs-boilerplate/7.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/nestjs-boilerplate/8.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/nestjs-boilerplate/9.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/nestjs-boilerplate/10.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/nestjs-boilerplate/11.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/nestjs-boilerplate/12.png</image:loc>
</image:image>
<lastmod>2026-03-06T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/projects/openai-project</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/openai-project/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/openai-project/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/openai-project/3.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/openai-project/4.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/openai-project/5.png</image:loc>
</image:image>
<lastmod>2022-12-15T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/projects/portfolio-v1</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v1/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v1/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v1/3.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v1/4.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v1/5.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v1/6.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v1/7.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v1/8.png</image:loc>
</image:image>
<lastmod>2022-01-20T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/projects/portfolio-v2</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v2/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v2/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v2/3.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v2/4.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v2/5.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v2/6.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v2/7.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v2/8.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v2/9.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v2/10.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v2/11.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v2/12.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v2/13.png</image:loc>
</image:image>
<lastmod>2023-10-24T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/projects/portfolio-v3</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v3/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v3/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v3/3.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v3/4.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v3/5.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v3/6.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v3/7.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v3/8.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v3/9.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v3/10.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v3/11.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v3/12.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v3/13.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/portfolio-v3/14.png</image:loc>
</image:image>
<lastmod>2025-12-17T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/projects/sovware-data-mandiri</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/sovware-data-mandiri/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/sovware-data-mandiri/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/sovware-data-mandiri/3.png</image:loc>
</image:image>
<lastmod>2025-11-30T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/projects/vba-toko-alat-olahraga</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/vba-toko-alat-olahraga/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/vba-toko-alat-olahraga/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/vba-toko-alat-olahraga/3.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/vba-toko-alat-olahraga/4.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/vba-toko-alat-olahraga/5.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/vba-toko-alat-olahraga/6.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/vba-toko-alat-olahraga/7.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/vba-toko-alat-olahraga/8.png</image:loc>
</image:image>
<lastmod>2023-04-28T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/id/projects/velora</loc>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/velora/1.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/velora/2.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/velora/3.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/velora/4.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/velora/5.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/velora/6.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/velora/7.png</image:loc>
</image:image>
<image:image>
<image:loc>https://pub-c9a04111f6e34e0a90735e3dd47beed8.r2.dev/projects/velora/8.png</image:loc>
</image:image>
<lastmod>2025-12-21T00:00:00.000Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/about</loc>
<lastmod>2026-03-30T23:53:46.136Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/contact</loc>
<lastmod>2026-03-30T23:53:46.136Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/privacy-policy</loc>
<lastmod>2026-03-30T23:53:46.136Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://devvnull.vercel.app/terms</loc>
<lastmod>2026-03-30T23:53:46.136Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
</urlset>
