<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://shenlu.me</loc>
<lastmod>2026-02-28</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog</loc>
<lastmod>2026-02-28</lastmod>
</url>
<url>
<loc>https://shenlu.me/about</loc>
<lastmod>2026-02-28</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/best-practice-for-pull-requests-on-github</loc>
<lastmod>Nov 19, 2022</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/building-a-gre-analytical-writing-practice-app-with-nextjs</loc>
<lastmod>May 05, 2025</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/building-and-pushing-docker-image-to-docker-hub-using-github-actions</loc>
<lastmod>Sep 26, 2025</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/building-mdx-blog-with-contentlayer-and-nextjs</loc>
<lastmod>Feb 18, 2023</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/contributing-open-source-projects-in-2021</loc>
<lastmod>Dec 31, 2021</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/create-a-nextjs-app-with-tailwind-css</loc>
<lastmod>Jan 12, 2023</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/ecmascript-built-in-constants-and-functions-about-mathematics</loc>
<lastmod>Feb 08, 2024</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/how-to-add-google-analytics-to-nextjs</loc>
<lastmod>Sep 02, 2023</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/how-to-batch-update-git-commit-messages</loc>
<lastmod>Jul 05, 2023</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/how-to-implement-cors-for-api-routes-nextjs</loc>
<lastmod>Jun 09, 2024</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/how-to-install-and-use-sqlite-on-ubuntu</loc>
<lastmod>May 20, 2024</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/it-is-time-to-build-in-public</loc>
<lastmod>Jun 10, 2024</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/learning-c-language-in-2019</loc>
<lastmod>Sep 15, 2019</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/link-git-commit-to-github-issues</loc>
<lastmod>Jul 28, 2023</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/managing-postgresql-with-tableplus</loc>
<lastmod>May 10, 2023</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/mathcheap-building-an-ai-math-tool-from-0-to-1</loc>
<lastmod>Sep 01, 2025</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/r-assignment-operators</loc>
<lastmod>Sep 22, 2019</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/self-hosted-analytics-with-umami-on-vercel</loc>
<lastmod>Feb 19, 2024</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/semantic-commit-messages</loc>
<lastmod>Mar 03, 2024</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/setting-up-local-postgresql-database-on-macos</loc>
<lastmod>May 20, 2025</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/setting-up-local-postgresql-database</loc>
<lastmod>May 08, 2023</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/setting-up-mac-terminal-with-iterm2-and-oh-my-zsh</loc>
<lastmod>Aug 03, 2024</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/setting-up-new-macbook-for-development</loc>
<lastmod>Jul 21, 2024</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/setting-up-ssh-and-git-on-macos</loc>
<lastmod>Aug 01, 2024</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/setting-up-ubuntu-development-environment-with-docker-on-macos</loc>
<lastmod>Aug 09, 2024</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/some-useful-linux-command-lines-for-manipulating-csv-files</loc>
<lastmod>Aug 31, 2023</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/upgrade-blog-to-nextjs-141</loc>
<lastmod>Feb 16, 2024</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/use-environment-variables-in-next.js</loc>
<lastmod>Jun 08, 2023</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/use-turso-with-drizzle-orm-and-bun-in-nextjs</loc>
<lastmod>Jun 11, 2024</lastmod>
</url>
<url>
<loc>https://shenlu.me/blog/why-did-git-push-suddenly-stop-working</loc>
<lastmod>Nov 23, 2025</lastmod>
</url>
</urlset>
