<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://storyie.com</loc>
<lastmod>2026-07-17T16:09:51.075Z</lastmod>
<changefreq>daily</changefreq>
<priority>1</priority>
</url>
<url>
<loc>https://storyie.com/blog</loc>
<lastmod>2026-07-17T16:09:51.075Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/tags</loc>
<lastmod>2026-07-17T16:09:51.075Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://storyie.com/login</loc>
<lastmod>2026-07-17T16:09:51.075Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://storyie.com/privacy</loc>
<lastmod>2026-07-17T16:09:51.075Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.3</priority>
</url>
<url>
<loc>https://storyie.com/terms</loc>
<lastmod>2026-07-17T16:09:51.075Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.3</priority>
</url>
<url>
<loc>https://storyie.com/blog/proving-postgres-to-turso-cutover</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/local-first-autosave-without-losing-last-keystroke</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/when-50-markdown-posts-broke-static-generation</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/when-cascades-dont-cascade</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/migrating-auth-without-rewriting-callers</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/protected-by-default-hono-api-fails-closed</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/zenn-tech-blog-35-articles-learnings</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/x-posting-automation-github-actions</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/web-vitals-self-hosted-monitoring</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/theme-package-cross-platform</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/test-strategy-nextjs-expo-monorepo</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/terraform-stripe-product-management</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/terraform-github-oidc-aws-deploy</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/supabase-rls-practical-patterns</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/supabase-rls-multi-tenant-isolation</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/supabase-auth-nextjs-expo</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/subscription-package-monorepo</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/storyie-introduction</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/staging-env-design-sst-cloudfront</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/sst-v3-practical-tips</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/sst-nextjs-deploy-aws</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/sst-cron-lambda-background-jobs</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/solo-dev-infra-zero-ops</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/solo-dev-cost-breakdown-aws-supabase</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/solo-dev-admin-dashboard-nextjs</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/push-notification-expo-sst</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/permission-design-rbac-abac-solo-dev</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/openclaw-aso-app-store-connect</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/openclaw-ai-agent-dev-workflow</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/multi-tenant-feature-gate-nextjs</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/monorepo-package-design-criteria</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/monorepo-cicd-pnpm-github-actions</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/llms-txt-nextjs-ai-discoverable</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/lexical-image-node-cross-platform</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/image-upload-r2-cross-platform</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/i18n-cross-platform-monorepo-solo-dev</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/expo-sdk-55-upgrade-practice</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/email-notification-system-sst-resend</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/drizzle-supabase-rls-monorepo</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/drizzle-migration-supabase-production</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/diary-app-seo-public-content-strategy</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/cross-platform-ui-component-design</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/cross-platform-payment-stripe-revenuecat</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/claude-code-action-review-learnings</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/claude-code-action-github-issues</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/auth-authz-full-picture-supabase</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/ai-writing-assist-diary-app-design</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/ai-monthly-report-lambda-diary</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/ai-bot-users-diary-app</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/lexical-cross-platform-monorepo</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/your-personal-domain</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/ai-driven-development-with-speckit</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/five-ways-to-use-storyie</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/from-private-thoughts-to-public-stories</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/multi-tenant-subdomain-routing</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/database-schema-design</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/cross-platform-lexical-editor</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/expo-react-native</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/nextjs-16-deployment</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/monorepo-architecture</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://storyie.com/blog/welcome-to-storyie</loc>
<lastmod>1980-01-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
</urlset>
