<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"><url><loc>https://garden.liwen.studio/about</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/agile-agentic-coding</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/ai-agent-tunnel-vision-architecture</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/ai-coding-reflection</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/ai-development-uncanny-valley</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/ai-era-junior-engineer-survival-guide</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/ai-vibe-coding</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/archive</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/authors</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/bad-interview-experiences</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/engineer-evaluation-psychology</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/ezdcbot</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/high-concurrency-architecture</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/imposter-syndrome</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/introducing-ghaction-lis</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/introducing-litool</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/mis-daily-rant</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/nextjs-deployment-cloudflare-pages-struggle</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/page/2</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/agent</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/agile</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/ai</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/ai%E5%8D%94%E4%BD%9C</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/architecture</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/backend</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/career</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/cli</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/cloudflare</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/dev-ex</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/discord</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/frontend</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/git-hub-actions</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/interview</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/k-8-s</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/microservices</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/murmuring</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/next-js</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/node-js</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/open-source</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/prompt-engineering</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/security</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/serverless</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/side-project</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/software-engineering</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/tools</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/vibe-coding</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/%E5%B7%A5%E4%BD%9C%E5%BF%83%E6%B3%95</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/%E5%B7%A5%E4%BD%9C%E6%B5%81</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/%E5%B7%A5%E7%A8%8B%E6%96%87%E5%8C%96</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/%E5%BF%83%E6%B3%95</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/%E5%BF%83%E7%90%86%E5%AD%B8</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/%E5%BF%83%E7%90%86%E6%88%90%E9%95%B7</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/%E7%94%9F%E6%B4%BB%E7%B4%80%E9%8C%84</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/%E8%81%B7%E5%A0%B4</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/%E8%81%B7%E6%B6%AF%E5%BF%83%E7%90%86</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/%E8%81%B7%E6%B6%AF%E7%99%BC%E5%B1%95</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/%E8%82%B2%E5%85%92</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/%E9%96%8B%E7%99%BC%E7%B6%93%E9%A9%97</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/%E9%9A%A8%E7%AD%86</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tags/%E9%9B%B2%E7%AB%AF%E9%83%A8%E7%BD%B2</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/tech-optimization-vs-wishlist</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/blog/weekend-dad-full-time-heart</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/tags</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/tags/react</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/tags/%E5%85%AD%E8%A7%92%E5%AD%B8%E9%99%A2</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/ai-agent-notes</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/ainotes/agent-setup-playbook</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/ainotes/ai-core-paths</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/ainotes/deployment-sop</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/ainotes/global-local-architecture</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/ainotes/knowledge-items</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/ainotes/workflow-and-skill</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/mermaid-gallery</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/mermaid-gallery/class-diagram</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/mermaid-gallery/cloud-infrastructure</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/mermaid-gallery/er-diagram</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/mermaid-gallery/flowchart</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/mermaid-gallery/gantt-chart</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/mermaid-gallery/gitgraph</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/mermaid-gallery/mindmap</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/mermaid-gallery/packet-diagram</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/mermaid-gallery/pie-chart</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/mermaid-gallery/quadrant-chart</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/mermaid-gallery/sequence-diagram</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/mermaid-gallery/state-diagram</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/mermaid-gallery/timeline</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/mermaid-gallery/user-journey</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/mermaid-gallery/xy-chart</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/npm-packages</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/npm-packages/bcrypt</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/npm-packages/dotenv</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/npm-packages/express</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/npm-packages/express-router</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/npm-packages/ezdcbot</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/npm-packages/formidable</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/npm-packages/ghaction-lis</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/npm-packages/jsonwebtoken</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/npm-packages/npm-overview</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/npm-packages/uuid</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/npm-packages/webserver</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/software-development</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/software-development/docker-environment-setup</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/software-development/nodejs-vite-fullstack-deployment</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/software-development/npm-publish-oidc</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/software-development/sdlc-overview</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/engineering/software-development/supabase-keep-alive-action</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/docker-notes</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/docker-notes/00-docker-cheatsheet</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/docker-notes/01-docker-basics</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/docker-notes/02-docker-build-image</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/docker-notes/03-cloud-and-network</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/docker-notes/04-data-persistence</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/docker-notes/05-docker-compose</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/docker-notes/06-github-actions</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/docker-notes/07-practical-scenarios</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/2026-nodejs</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/2026-nodejs-main-quests</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/nodejs-course/06-1-nodejs-env-server</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/nodejs-course/06-2-nodejs-response-handler</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/nodejs-course/06-3-nodejs-restful-get-delete</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/nodejs-course/06-4-nodejs-restful-post-patch</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/nodejs-course/async-await-refactoring</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/nodejs-course/async-promise-basics</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/nodejs-course/core-modules</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/nodejs-course/environment-setup</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/nodejs-course/express-basics</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/nodejs-course/express-middleware</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/nodejs-course/intro</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/nodejs-course/main-quests/quest-1</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/nodejs-course/main-quests/quest-2</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/nodejs-course/main-quests/quest-3</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/nodejs-course/main-quests/quest-4</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/nodejs-course/nodejs-architecture</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/nodejs-course/npm-ecosystem</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/nodejs-course/promise-advanced</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/nodejs-course/promise-chaining-and-catch</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/nodejs-course/sql-databases</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/react-2026</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/react-basics</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/react-basics/react-cdn-usage</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/react-basics/react-hook-form</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/react-basics/react-router</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/react-basics/react-use-effect</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/react-basics/react-use-ref</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/react-basics/react-use-state</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/react-basics/redux-toolkit</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/react-basics/swiper-tutorial</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/react-basics/vite-setup-guide</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/react-course/course-notes-js-fundamentals</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/hexschool/react-course/course-notes-restful-api</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/linux-notes</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/linux-notes/00-linux-cheatsheet</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/linux-notes/01-environment</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/linux-notes/02-file-operations</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/linux-notes/03-advanced-basics</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/linux-notes/04-account-management</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/linux-notes/05-permissions</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/linux-notes/06-redirection</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/linux-notes/07-sysmon</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/linux-notes/08-schedule</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/linux-notes/09-disk-management</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/linux-notes/10-network-tools</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/linux-notes/11-package-management</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/linux-notes/12-service-logging</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/linux-notes/13-ssh-security</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/linux-notes/14-compression-backup</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/linux-notes/15-file-search-regex</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/linux-notes/16-env-shell-config</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/linux-notes/17-shell-script-basics</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-01</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-02</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-03</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-04</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-05</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-06</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-07</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-08</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-09</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-10</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-11</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-12</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-13</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-14</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-15</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-16</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-17</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-18</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-19</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-20</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-21</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-22</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-23</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-24</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-25</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-26</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-27</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-28</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-29</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/next-js-notes/day-30</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/nextjs-notes</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/nginx-notes</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/nginx-notes/basic-concepts</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/nginx-notes/config-parsing</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/nginx-notes/load-balancing</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/nginx-notes/performance-optimization</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/nginx-notes/production-boilerplate</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/nginx-notes/reverse-proxy</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/nginx-notes/security-hardening</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/nginx-notes/static-deployment</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/learning/nginx-notes/troubleshooting</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/liwen-sop/sop-documents/internal-assessment</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/liwen-sop/sop-documents/interview</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/liwen-sop/sop-documents/prd</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/liwen-sop/sop-documents/system-analysis</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/liwen-sop/sop-documents/tech-spec</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/projects-business/liwen-sop</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/projects-business/liwen-sop/documents</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/projects-business/liwen-sop/sop-overview</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/projects-business/side-projects</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/projects-business/side-projects/ezdcbot</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/projects-business/side-projects/ezdcbot/api-design</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/projects-business/side-projects/ezdcbot/architecture</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/projects-business/side-projects/ezdcbot/embed-and-error-handling</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/projects-business/side-projects/ezdcbot/intro</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/projects-business/side-projects/ghaction-lis</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/docs/projects-business/side-projects/ghaction-lis/intro</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://garden.liwen.studio/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url></urlset>