<?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://blog.ssumi.space/</loc></url><url><loc>https://blog.ssumi.space/blog/</loc></url><url><loc>https://blog.ssumi.space/blog/file-upload-refactoring-content-validation/</loc><lastmod>2026-03-25T00:00:00.000Z</lastmod></url><url><loc>https://blog.ssumi.space/blog/file-upload-refactoring-scattered-logic/</loc><lastmod>2026-03-23T00:00:00.000Z</lastmod></url><url><loc>https://blog.ssumi.space/blog/file-upload-refactoring-v1-analysis/</loc><lastmod>2026-03-24T00:00:00.000Z</lastmod></url><url><loc>https://blog.ssumi.space/blog/file-upload-refactoring-v2-design/</loc><lastmod>2026-03-24T00:00:00.000Z</lastmod></url><url><loc>https://blog.ssumi.space/blog/file-upload-refactoring-v2-implementation/</loc><lastmod>2026-03-24T00:00:00.000Z</lastmod></url><url><loc>https://blog.ssumi.space/blog/flutter-real-device-localhost/</loc><lastmod>2026-04-09T00:00:00.000Z</lastmod></url><url><loc>https://blog.ssumi.space/blog/frontend-sha256-login-hashing/</loc><lastmod>2026-03-11T00:00:00.000Z</lastmod></url><url><loc>https://blog.ssumi.space/blog/http-error-i18n-fallback/</loc><lastmod>2026-03-13T00:00:00.000Z</lastmod></url><url><loc>https://blog.ssumi.space/blog/i18n-unused-keys-automation/</loc><lastmod>2026-04-13T00:00:00.000Z</lastmod></url><url><loc>https://blog.ssumi.space/blog/i18n-unused-keys-library-choice/</loc><lastmod>2026-04-13T00:00:00.000Z</lastmod></url><url><loc>https://blog.ssumi.space/blog/i18n-unused-keys-problem/</loc><lastmod>2026-04-13T00:00:00.000Z</lastmod></url><url><loc>https://blog.ssumi.space/blog/i18n-unused-keys-ts-morph-setup/</loc><lastmod>2026-04-13T00:00:00.000Z</lastmod></url><url><loc>https://blog.ssumi.space/blog/i18n-unused-keys-why-i18n-keys/</loc><lastmod>2026-04-13T00:00:00.000Z</lastmod></url><url><loc>https://blog.ssumi.space/blog/i18next-korean-postprocessor/</loc><lastmod>2026-02-27T00:00:00.000Z</lastmod></url><url><loc>https://blog.ssumi.space/blog/interceptor-error-path-unification/</loc><lastmod>2026-03-10T00:00:00.000Z</lastmod></url><url><loc>https://blog.ssumi.space/blog/nextjs-blog-content-folder-separation/</loc><lastmod>2026-03-27T00:00:00.000Z</lastmod></url><url><loc>https://blog.ssumi.space/blog/obsidian-claudian-blog-review-workflow/</loc><lastmod>2026-03-27T00:00:00.000Z</lastmod></url><url><loc>https://blog.ssumi.space/blog/obsidian-image-mdx-remark-plugin/</loc><lastmod>2026-03-25T00:00:00.000Z</lastmod></url><url><loc>https://blog.ssumi.space/blog/orval-codegen-spec-version-header-removal/</loc><lastmod>2026-04-01T00:00:00.000Z</lastmod></url><url><loc>https://blog.ssumi.space/blog/react-router-errorboundary/</loc><lastmod>2026-04-09T00:00:00.000Z</lastmod></url><url><loc>https://blog.ssumi.space/blog/series/</loc></url><url><loc>https://blog.ssumi.space/blog/series/error-handling/</loc></url><url><loc>https://blog.ssumi.space/blog/series/file-manager-refactoring/</loc></url><url><loc>https://blog.ssumi.space/blog/series/flutter-beginner/</loc></url><url><loc>https://blog.ssumi.space/blog/series/i18n-unused-keys/</loc></url><url><loc>https://blog.ssumi.space/blog/series/obsidian-blog-workflow/</loc></url><url><loc>https://blog.ssumi.space/blog/series/usefunnel/</loc></url><url><loc>https://blog.ssumi.space/blog/series/zustand-scoped-store/</loc></url><url><loc>https://blog.ssumi.space/blog/tanstack-query-v5-register-default-error/</loc><lastmod>2026-03-09T00:00:00.000Z</lastmod></url><url><loc>https://blog.ssumi.space/blog/typescript-type-narrowing/</loc><lastmod>2024-04-09T00:00:00.000Z</lastmod></url><url><loc>https://blog.ssumi.space/blog/version-polling-spa-update-notification/</loc><lastmod>2026-03-20T00:00:00.000Z</lastmod></url><url><loc>https://blog.ssumi.space/blog/why-typescript-doubts-your-code/</loc><lastmod>2024-04-12T00:00:00.000Z</lastmod></url><url><loc>https://blog.ssumi.space/blog/zustand-context-scoped-store/</loc><lastmod>2026-03-13T00:00:00.000Z</lastmod></url><url><loc>https://blog.ssumi.space/blog/zustand-create-zustand-context/</loc><lastmod>2026-03-13T00:00:00.000Z</lastmod></url><url><loc>https://blog.ssumi.space/blog/zustand-why-scoped-store/</loc><lastmod>2026-03-13T00:00:00.000Z</lastmod></url></urlset>