<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://chahyunwoo.dev</loc>
<lastmod>2026-11-09T23:22:37.757Z</lastmod>
<changefreq>weekly</changefreq>
<priority>1</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog</loc>
<lastmod>2026-11-09T23:22:37.757Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/about/ko</loc>
<lastmod>2025-03-27T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/about/en</loc>
<lastmod>2025-03-27T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/about/jp</loc>
<lastmod>2025-03-27T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/6suhiXLNek</loc>
<lastmod>2026-11-08T20:54:50.797Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/vy6q2gero1</loc>
<lastmod>2026-11-09T05:25:34.305Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/rNq7g27D0Z</loc>
<lastmod>2026-11-08T15:45:39.669Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/Atleqgd-XS</loc>
<lastmod>2026-11-09T13:23:05.433Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/VS7Jjr3dZO</loc>
<lastmod>2026-11-09T05:24:52.043Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/2otD7gATkX</loc>
<lastmod>2026-11-08T19:59:29.330Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/7HP03QOi_s</loc>
<lastmod>2026-11-08T15:26:16.458Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/_RS_x1M8lF</loc>
<lastmod>2026-11-08T22:20:10.942Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/Adew6dJYOE</loc>
<lastmod>2026-11-09T02:48:14.269Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/EDC9aIEvHG</loc>
<lastmod>2026-11-08T22:23:07.100Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/github-tier-development-story</loc>
<lastmod>2026-11-09T05:25:00.875Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/nextjs-16-blog-migration</loc>
<lastmod>2026-11-09T05:25:16.437Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/mac-homeserver-tailscale-ssh</loc>
<lastmod>2026-11-08T23:18:42.275Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/dotfiles-setup-automation</loc>
<lastmod>2026-11-08T23:10:08.259Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/next-mdx-remote-v6-upgrade</loc>
<lastmod>2026-11-09T05:25:27.771Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/docker-concepts-for-frontend-developers</loc>
<lastmod>2026-11-09T01:40:42.336Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/keycloak-authentication-in-react-spa</loc>
<lastmod>2026-11-09T01:39:34.750Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/turborepo-monorepo-setup</loc>
<lastmod>2026-11-09T04:01:35.796Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/2025-retrospective</loc>
<lastmod>2026-11-09T05:25:32.755Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/zod-react-hook-form</loc>
<lastmod>2026-11-09T05:25:04.492Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/npm-yarn-pnpm-comparison</loc>
<lastmod>2026-11-09T05:25:54.804Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/tanstack-router-query-combo</loc>
<lastmod>2026-11-09T05:25:21.130Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/axios-to-ky-migration</loc>
<lastmod>2026-11-09T05:25:05.505Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/jwt-authentication-frontend-guide</loc>
<lastmod>2026-11-09T04:11:37.538Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/biome-eslint-prettier-replacement</loc>
<lastmod>2026-11-09T05:25:15.760Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/frontend-project-initial-setup-guide</loc>
<lastmod>2026-11-09T05:25:03.304Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/feature-sliced-design-guide</loc>
<lastmod>2026-11-09T05:25:25.229Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/setting-up-development-env-mac</loc>
<lastmod>2026-11-09T05:25:17.160Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/setting-up-development-env-window</loc>
<lastmod>2026-11-09T05:25:22.363Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/storybook-complete-guide</loc>
<lastmod>2026-11-09T05:25:09.355Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/what-is-nodejs</loc>
<lastmod>2026-11-09T05:25:25.999Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/frontend-technical-interview</loc>
<lastmod>2026-11-08T18:41:16.914Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/importance-of-region-setting-when-deploying-with-vercel</loc>
<lastmod>2026-11-09T05:25:18.780Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/introducing-the-comment-feature-in-blog</loc>
<lastmod>2026-11-09T05:25:41.555Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/how-to-make-blog-with-nextjs</loc>
<lastmod>2026-11-09T05:25:19.376Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/migrate-from-next13-to-next15</loc>
<lastmod>2026-11-09T05:25:25.757Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/closer-perfect-analysis</loc>
<lastmod>2026-11-09T05:25:09.046Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/typescript-and-OOP</loc>
<lastmod>2026-11-09T05:25:20.369Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/enact-spotlightcontainerdecorator-vs-spottable</loc>
<lastmod>2026-11-09T05:25:20.694Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/enact-what-is-panel</loc>
<lastmod>2026-11-09T05:25:10.953Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/what-is-enact</loc>
<lastmod>2026-11-09T05:25:29.136Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/what-means-pwa</loc>
<lastmod>2026-11-09T05:25:30.382Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/debounce-vs-throttle</loc>
<lastmod>2026-11-09T05:25:16.451Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/oauth-with-next-auth</loc>
<lastmod>2026-11-09T05:25:12.008Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/create-guestbook-by-supabase</loc>
<lastmod>2026-11-09T05:25:13.249Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://chahyunwoo.dev/blog/create-blog-by-nextjs</loc>
<lastmod>2026-11-09T05:25:22.798Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
</urlset>
