<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url><loc>https://michelini.dev/</loc><lastmod>2026-10-29</lastmod></url>
  <url><loc>https://michelini.dev/blog</loc><lastmod>2026-10-29</lastmod></url>
  <url><loc>https://michelini.dev/cv</loc></url>
  <url><loc>https://michelini.dev/blog/you-should-stop-using-high-effort-for-everything-in-claude-code-11j2</loc><lastmod>2026-10-29</lastmod></url>
  <url><loc>https://michelini.dev/blog/you-should-use-map-instead-of-object-literals-for-lookup-tables-2fmb</loc><lastmod>2026-10-22</lastmod></url>
  <url><loc>https://michelini.dev/blog/stop-writing-raw-sql-in-your-migrations-most-of-the-time-i1o</loc><lastmod>2026-08-28</lastmod></url>
  <url><loc>https://michelini.dev/blog/why-mermaid-is-the-best-way-to-document-your-architecture-in-the-ai-era-2dgb</loc><lastmod>2026-02-25</lastmod></url>
  <url><loc>https://michelini.dev/blog/when-and-how-to-use-lru-cache-in-nodejs-backend-projects-42c8</loc><lastmod>2026-01-30</lastmod></url>
  <url><loc>https://michelini.dev/blog/redis-commander-with-docker-and-apple-silicon-2a5m</loc><lastmod>2025-10-18</lastmod></url>
  <url><loc>https://michelini.dev/blog/template-literals-why-indentation-matters-especially-for-ai-prompts-3jl4</loc><lastmod>2025-08-14</lastmod></url>
  <url><loc>https://michelini.dev/blog/secure-your-env-with-dotenvx-3b67</loc><lastmod>2025-07-07</lastmod></url>
  <url><loc>https://michelini.dev/blog/setting-up-docmost-with-amazon-ses-smtp-using-docker-compose-5m7</loc><lastmod>2025-06-09</lastmod></url>
  <url><loc>https://michelini.dev/blog/understanding-mcp-servers-across-different-platforms-claude-desktop-vs-vs-code-vs-cursor-4opk</loc><lastmod>2025-04-28</lastmod></url>
  <url><loc>https://michelini.dev/blog/single-quotes-vs-double-quotes-in-yaml-how-they-differ-from-javascript-and-typescript-20hj</loc><lastmod>2025-04-03</lastmod></url>
  <url><loc>https://michelini.dev/blog/using-object-literals-instead-of-switch-statements-in-javascript-kdp</loc><lastmod>2025-03-13</lastmod></url>
  <url><loc>https://michelini.dev/blog/some-practical-examples-why-i-prefer-axios-over-fetch-lkd</loc><lastmod>2024-02-06</lastmod></url>
  <url><loc>https://michelini.dev/blog/how-to-fix-huggingface-ssh-authentication-error-with-git-1l6m</loc><lastmod>2024-01-25</lastmod></url>
  <url><loc>https://michelini.dev/blog/always-abstract-nested-object-in-typescript-4pp5</loc><lastmod>2023-11-16</lastmod></url>
  <url><loc>https://michelini.dev/blog/the-returning-clause-in-sql-11k2</loc><lastmod>2023-10-19</lastmod></url>
  <url><loc>https://michelini.dev/blog/what-are-typescript-discriminated-unions-5hbb</loc><lastmod>2023-07-19</lastmod></url>
  <url><loc>https://michelini.dev/blog/how-to-test-an-async-function-to-throw-an-exception-in-jest-3a90</loc><lastmod>2023-07-12</lastmod></url>
  <url><loc>https://michelini.dev/blog/why-you-shouldnt-mix-es-modules-and-commonjs-import-statements-56fc</loc><lastmod>2023-06-13</lastmod></url>
  <url><loc>https://michelini.dev/blog/how-to-define-objects-with-type-definitions-in-jsdoc-comments-23n1</loc><lastmod>2023-05-24</lastmod></url>
  <url><loc>https://michelini.dev/blog/the-navigator-clipboard-api-in-javascript-38gn</loc><lastmod>2023-05-17</lastmod></url>
  <url><loc>https://michelini.dev/blog/code-snippets-testing-html-anchor-links-in-cypress-2ol8</loc><lastmod>2022-12-05</lastmod></url>
  <url><loc>https://michelini.dev/blog/github-actions-for-npm-packages-b10</loc><lastmod>2022-11-23</lastmod></url>
  <url><loc>https://michelini.dev/blog/how-to-replace-the-api-key-with-private-apps-in-hubspot-29i9</loc><lastmod>2022-11-15</lastmod></url>
  <url><loc>https://michelini.dev/blog/how-to-fix-the-content-security-policy-directive-with-strapi-v4-and-upload-on-aws-s3-3bp2</loc><lastmod>2022-09-04</lastmod></url>
  <url><loc>https://michelini.dev/blog/using-swr-hook-with-suspense-in-react-18-1clk</loc><lastmod>2022-06-16</lastmod></url>
  <url><loc>https://michelini.dev/blog/a-practical-example-of-suspense-in-react-18-3lln</loc><lastmod>2022-06-13</lastmod></url>
  <url><loc>https://michelini.dev/blog/how-to-rename-the-master-branch-to-main-3ad5</loc><lastmod>2022-04-21</lastmod></url>
  <url><loc>https://michelini.dev/blog/understanding-css-variables-4p9b</loc><lastmod>2022-01-07</lastmod></url>
  <url><loc>https://michelini.dev/blog/migrating-helmet-for-expressjs-from-v4x-to-v5x-45ac</loc><lastmod>2022-01-06</lastmod></url>
  <url><loc>https://michelini.dev/blog/how-to-mock-environmental-variables-with-jest-2j3c</loc><lastmod>2021-11-25</lastmod></url>
  <url><loc>https://michelini.dev/blog/how-to-use-es-modules-with-nodejs-4ncn</loc><lastmod>2021-11-03</lastmod></url>
  <url><loc>https://michelini.dev/blog/you-should-stop-using-parseint-nbf</loc><lastmod>2021-10-14</lastmod></url>
  <url><loc>https://michelini.dev/blog/a-practical-example-of-how-to-use-custom-errors-in-javascript-1175</loc><lastmod>2021-10-08</lastmod></url>
  <url><loc>https://michelini.dev/blog/a-practical-example-on-how-to-use-currying-in-javascript-1ae9</loc><lastmod>2021-09-22</lastmod></url>
  <url><loc>https://michelini.dev/blog/how-to-use-postman-tests-to-populate-variables-3mln</loc><lastmod>2021-09-15</lastmod></url>
  <url><loc>https://michelini.dev/blog/how-to-use-axios-interceptors-to-handle-api-error-responses-2ij1</loc><lastmod>2021-09-13</lastmod></url>
  <url><loc>https://michelini.dev/blog/understanding-react-useeffect-1idg</loc><lastmod>2021-09-13</lastmod></url>
  <url><loc>https://michelini.dev/blog/fetching-data-with-react-hooks-and-axios-114h</loc><lastmod>2021-09-09</lastmod></url>
  <url><loc>https://michelini.dev/blog/how-to-test-mongoose-models-with-jest-and-mockingoose-2k10</loc><lastmod>2021-09-07</lastmod></url>
  <url><loc>https://michelini.dev/blog/how-to-persist-data-with-docker-compose-ik8</loc><lastmod>2021-08-31</lastmod></url>
  <url><loc>https://michelini.dev/blog/random-numbers-in-node-js-with-crypto-4agg</loc><lastmod>2021-08-31</lastmod></url>
  <url><loc>https://michelini.dev/blog/how-to-squash-commits-17k7</loc><lastmod>2021-08-19</lastmod></url>
</urlset>
