<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml">
  <url>
    <loc>https://ngandu.dev/en</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/about</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/about" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/about" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/about" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/contact</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/contact" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/contact" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/contact" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/research</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/research" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/research" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/research" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/wall-of-love</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/wall-of-love" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/wall-of-love" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/wall-of-love" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/blog/1</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/1" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/1" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/1" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/blog/2</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/2" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/2" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/2" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/projects/1</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/projects/1" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/projects/1" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/projects/1" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/blog/implementing-billing-infrastructure-with-flexpay</loc>
    <lastmod>2026-07-24</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/implementing-billing-infrastructure-with-flexpay" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/implementing-billing-infrastructure-with-flexpay" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/implementing-billing-infrastructure-with-flexpay" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/blog/modeling-business-rules-with-domain-exceptions</loc>
    <lastmod>2026-07-23</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/modeling-business-rules-with-domain-exceptions" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/modeling-business-rules-with-domain-exceptions" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/modeling-business-rules-with-domain-exceptions" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/blog/decoupling-from-system-time-in-symfony</loc>
    <lastmod>2026-07-23</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/decoupling-from-system-time-in-symfony" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/decoupling-from-system-time-in-symfony" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/decoupling-from-system-time-in-symfony" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/blog/testing-ddd-applications-beyond-unit-tests</loc>
    <lastmod>2026-07-23</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/testing-ddd-applications-beyond-unit-tests" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/testing-ddd-applications-beyond-unit-tests" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/testing-ddd-applications-beyond-unit-tests" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/blog/type-safe-frontend-data-fetching-layer</loc>
    <lastmod>2026-07-22</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/type-safe-frontend-data-fetching-layer" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/type-safe-frontend-data-fetching-layer" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/type-safe-frontend-data-fetching-layer" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/blog/symfony-end-to-end-authentication</loc>
    <lastmod>2026-07-21</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/symfony-end-to-end-authentication" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/symfony-end-to-end-authentication" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/symfony-end-to-end-authentication" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/blog/symfony-cqrs-read-models-without-orm</loc>
    <lastmod>2026-07-21</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/symfony-cqrs-read-models-without-orm" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/symfony-cqrs-read-models-without-orm" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/symfony-cqrs-read-models-without-orm" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/blog/symfony-clean-architecture-ddd</loc>
    <lastmod>2026-07-21</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/symfony-clean-architecture-ddd" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/symfony-clean-architecture-ddd" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/symfony-clean-architecture-ddd" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/blog/symfony-typesafe-value-objects-postgresql-jsonb</loc>
    <lastmod>2026-07-21</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/symfony-typesafe-value-objects-postgresql-jsonb" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/symfony-typesafe-value-objects-postgresql-jsonb" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/symfony-typesafe-value-objects-postgresql-jsonb" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/blog/building-a-consistent-datafetching-layer-in-react-with-tanstack-query</loc>
    <lastmod>2025-12-04</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/building-a-consistent-datafetching-layer-in-react-with-tanstack-query" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/building-a-consistent-datafetching-layer-in-react-with-tanstack-query" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/building-a-consistent-datafetching-layer-in-react-with-tanstack-query" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/blog/keyset-pagination-postgresql-drizzle-trpc-nextjs</loc>
    <lastmod>2025-11-17</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/keyset-pagination-postgresql-drizzle-trpc-nextjs" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/keyset-pagination-postgresql-drizzle-trpc-nextjs" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/keyset-pagination-postgresql-drizzle-trpc-nextjs" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/blog/monorepo-nextjs-shadcnui-bun</loc>
    <lastmod>2025-11-11</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/monorepo-nextjs-shadcnui-bun" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/monorepo-nextjs-shadcnui-bun" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/monorepo-nextjs-shadcnui-bun" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/blog/symfony-strategy-design-pattern</loc>
    <lastmod>2025-09-22</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/symfony-strategy-design-pattern" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/symfony-strategy-design-pattern" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/symfony-strategy-design-pattern" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/blog/getting-started-with-value-objects-in-symfony</loc>
    <lastmod>2025-03-17</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/getting-started-with-value-objects-in-symfony" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/getting-started-with-value-objects-in-symfony" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/getting-started-with-value-objects-in-symfony" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/blog/passkey-authentication-guide-for-symfony</loc>
    <lastmod>2024-09-22</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/passkey-authentication-guide-for-symfony" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/passkey-authentication-guide-for-symfony" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/passkey-authentication-guide-for-symfony" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/blog/deploying-ruby-on-rails-with-capistrano-puma-and-nginx-simplified</loc>
    <lastmod>2024-07-07</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/deploying-ruby-on-rails-with-capistrano-puma-and-nginx-simplified" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/deploying-ruby-on-rails-with-capistrano-puma-and-nginx-simplified" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/deploying-ruby-on-rails-with-capistrano-puma-and-nginx-simplified" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/blog/decoupling-your-applications-user-model-from-symfonys-security-system</loc>
    <lastmod>2024-07-04</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/decoupling-your-applications-user-model-from-symfonys-security-system" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/decoupling-your-applications-user-model-from-symfonys-security-system" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/decoupling-your-applications-user-model-from-symfonys-security-system" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/blog/sending-github-notifications-to-telegram-a-symfony-webhook-guide</loc>
    <lastmod>2024-07-01</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/sending-github-notifications-to-telegram-a-symfony-webhook-guide" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/sending-github-notifications-to-telegram-a-symfony-webhook-guide" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/sending-github-notifications-to-telegram-a-symfony-webhook-guide" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/projects/leganews-pro</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/projects/leganews-pro" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/projects/leganews-pro" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/projects/leganews-pro" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/projects/basango</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/projects/basango" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/projects/basango" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/projects/basango" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/projects/php-packages-graph</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/projects/php-packages-graph" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/projects/php-packages-graph" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/projects/php-packages-graph" />
  </url>
  <url>
    <loc>https://ngandu.dev/en/projects/points-of-interest</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/projects/points-of-interest" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/projects/points-of-interest" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/projects/points-of-interest" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/about</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/about" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/about" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/about" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/contact</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/contact" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/contact" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/contact" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/research</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/research" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/research" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/research" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/wall-of-love</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/wall-of-love" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/wall-of-love" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/wall-of-love" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/blog/1</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/1" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/1" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/1" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/blog/2</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/2" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/2" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/2" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/projects/1</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/projects/1" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/projects/1" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/projects/1" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/blog/implementing-billing-infrastructure-with-flexpay</loc>
    <lastmod>2026-07-24</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/implementing-billing-infrastructure-with-flexpay" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/implementing-billing-infrastructure-with-flexpay" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/implementing-billing-infrastructure-with-flexpay" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/blog/modeling-business-rules-with-domain-exceptions</loc>
    <lastmod>2026-07-23</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/modeling-business-rules-with-domain-exceptions" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/modeling-business-rules-with-domain-exceptions" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/modeling-business-rules-with-domain-exceptions" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/blog/decoupling-from-system-time-in-symfony</loc>
    <lastmod>2026-07-23</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/decoupling-from-system-time-in-symfony" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/decoupling-from-system-time-in-symfony" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/decoupling-from-system-time-in-symfony" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/blog/testing-ddd-applications-beyond-unit-tests</loc>
    <lastmod>2026-07-23</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/testing-ddd-applications-beyond-unit-tests" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/testing-ddd-applications-beyond-unit-tests" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/testing-ddd-applications-beyond-unit-tests" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/blog/type-safe-frontend-data-fetching-layer</loc>
    <lastmod>2026-07-22</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/type-safe-frontend-data-fetching-layer" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/type-safe-frontend-data-fetching-layer" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/type-safe-frontend-data-fetching-layer" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/blog/symfony-end-to-end-authentication</loc>
    <lastmod>2026-07-21</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/symfony-end-to-end-authentication" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/symfony-end-to-end-authentication" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/symfony-end-to-end-authentication" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/blog/symfony-cqrs-read-models-without-orm</loc>
    <lastmod>2026-07-21</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/symfony-cqrs-read-models-without-orm" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/symfony-cqrs-read-models-without-orm" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/symfony-cqrs-read-models-without-orm" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/blog/symfony-clean-architecture-ddd</loc>
    <lastmod>2026-07-21</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/symfony-clean-architecture-ddd" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/symfony-clean-architecture-ddd" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/symfony-clean-architecture-ddd" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/blog/symfony-typesafe-value-objects-postgresql-jsonb</loc>
    <lastmod>2026-07-21</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/symfony-typesafe-value-objects-postgresql-jsonb" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/symfony-typesafe-value-objects-postgresql-jsonb" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/symfony-typesafe-value-objects-postgresql-jsonb" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/blog/building-a-consistent-datafetching-layer-in-react-with-tanstack-query</loc>
    <lastmod>2025-12-04</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/building-a-consistent-datafetching-layer-in-react-with-tanstack-query" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/building-a-consistent-datafetching-layer-in-react-with-tanstack-query" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/building-a-consistent-datafetching-layer-in-react-with-tanstack-query" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/blog/keyset-pagination-postgresql-drizzle-trpc-nextjs</loc>
    <lastmod>2025-11-17</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/keyset-pagination-postgresql-drizzle-trpc-nextjs" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/keyset-pagination-postgresql-drizzle-trpc-nextjs" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/keyset-pagination-postgresql-drizzle-trpc-nextjs" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/blog/monorepo-nextjs-shadcnui-bun</loc>
    <lastmod>2025-11-11</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/monorepo-nextjs-shadcnui-bun" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/monorepo-nextjs-shadcnui-bun" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/monorepo-nextjs-shadcnui-bun" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/blog/symfony-strategy-design-pattern</loc>
    <lastmod>2025-09-22</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/symfony-strategy-design-pattern" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/symfony-strategy-design-pattern" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/symfony-strategy-design-pattern" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/blog/getting-started-with-value-objects-in-symfony</loc>
    <lastmod>2025-03-17</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/getting-started-with-value-objects-in-symfony" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/getting-started-with-value-objects-in-symfony" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/getting-started-with-value-objects-in-symfony" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/blog/passkey-authentication-guide-for-symfony</loc>
    <lastmod>2024-09-22</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/passkey-authentication-guide-for-symfony" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/passkey-authentication-guide-for-symfony" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/passkey-authentication-guide-for-symfony" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/blog/deploying-ruby-on-rails-with-capistrano-puma-and-nginx-simplified</loc>
    <lastmod>2024-07-07</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/deploying-ruby-on-rails-with-capistrano-puma-and-nginx-simplified" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/deploying-ruby-on-rails-with-capistrano-puma-and-nginx-simplified" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/deploying-ruby-on-rails-with-capistrano-puma-and-nginx-simplified" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/blog/decoupling-your-applications-user-model-from-symfonys-security-system</loc>
    <lastmod>2024-07-04</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/decoupling-your-applications-user-model-from-symfonys-security-system" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/decoupling-your-applications-user-model-from-symfonys-security-system" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/decoupling-your-applications-user-model-from-symfonys-security-system" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/blog/sending-github-notifications-to-telegram-a-symfony-webhook-guide</loc>
    <lastmod>2024-07-01</lastmod>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/blog/sending-github-notifications-to-telegram-a-symfony-webhook-guide" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/blog/sending-github-notifications-to-telegram-a-symfony-webhook-guide" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/blog/sending-github-notifications-to-telegram-a-symfony-webhook-guide" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/projects/leganews-pro</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/projects/leganews-pro" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/projects/leganews-pro" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/projects/leganews-pro" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/projects/basango</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/projects/basango" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/projects/basango" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/projects/basango" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/projects/php-packages-graph</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/projects/php-packages-graph" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/projects/php-packages-graph" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/projects/php-packages-graph" />
  </url>
  <url>
    <loc>https://ngandu.dev/fr/projects/points-of-interest</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://ngandu.dev/en/projects/points-of-interest" />
    <xhtml:link rel="alternate" hreflang="fr" href="https://ngandu.dev/fr/projects/points-of-interest" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://ngandu.dev/en/projects/points-of-interest" />
  </url>
</urlset>