<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1">
<url>
<loc>https://codekits.shop/blog</loc>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop</loc>
<lastmod>2026-10-26T20:00:07.086Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/services</loc>
<lastmod>2026-10-26T20:00:07.086Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/services/rust-desktop-application</loc>
<lastmod>2026-10-26T20:00:07.086Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/services/swift-native-ios-app</loc>
<lastmod>2026-10-26T20:00:07.086Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/services/nextjs-magic-ui-web-application</loc>
<lastmod>2026-10-26T20:00:07.086Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/services/custom-nextjs-store</loc>
<lastmod>2026-10-26T20:00:07.086Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/services/react-web-application</loc>
<lastmod>2026-10-26T20:00:07.086Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/source-code</loc>
<lastmod>2026-10-26T20:00:07.086Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/software</loc>
<lastmod>2026-10-26T00:00:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/portfolio</loc>
<lastmod>2026-10-26T20:00:07.086Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/portfolio/encrypted-messenger-swift</loc>
<lastmod>2026-10-26T20:00:07.086Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/portfolio/crypta-ssh-terminal</loc>
<lastmod>2026-10-26T20:00:07.086Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/portfolio/codekits-workspace</loc>
<lastmod>2026-10-26T20:00:07.086Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/portfolio/nextjs-video-platform</loc>
<lastmod>2026-10-26T20:00:07.086Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/portfolio/php-mysql-blog-commerce</loc>
<lastmod>2026-10-26T20:00:07.086Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/portfolio/crypta-app-code</loc>
<lastmod>2026-10-26T20:00:07.087Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/products/nextjs-stripe-mysql-store-template</loc>
<lastmod>2026-10-26T20:00:07.087Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/products/premium-nextjs-stripe-store-template</loc>
<lastmod>2026-10-26T20:00:07.087Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/demos/nextjs-store</loc>
<lastmod>2026-10-26T20:00:07.087Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/faq</loc>
<lastmod>2026-10-26T20:00:07.087Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/privacy</loc>
<lastmod>2026-10-26T20:00:07.087Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/security</loc>
<lastmod>2026-10-26T20:00:07.087Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/terms</loc>
<lastmod>2026-10-26T20:00:07.087Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/add-email-attachments-and-inline-cid-images</loc>
<image:image>
<image:loc>https://codekits.shop/blog/add-email-attachments-and-inline-cid-images/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/add-photo-and-file-attachments-to-swiftui</loc>
<image:image>
<image:loc>https://codekits.shop/blog/add-photo-and-file-attachments-to-swiftui/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/add-resumable-uploads-with-progress-and-cancellation</loc>
<image:image>
<image:loc>https://codekits.shop/blog/add-resumable-uploads-with-progress-and-cancellation/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/animated-offer-badge-brand-colours</loc>
<image:image>
<image:loc>https://codekits.shop/blog/animated-offer-badge-brand-colours/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/blog-canonical-social-rss-sitemap</loc>
<image:image>
<image:loc>https://codekits.shop/blog/blog-canonical-social-rss-sitemap/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/blog-drafts-scheduled-publication</loc>
<image:image>
<image:loc>https://codekits.shop/blog/blog-drafts-scheduled-publication/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/blog-image-uploads-metadata-removal</loc>
<image:image>
<image:loc>https://codekits.shop/blog/blog-image-uploads-metadata-removal/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/build-an-honest-sent-email-history</loc>
<image:image>
<image:loc>https://codekits.shop/blog/build-an-honest-sent-email-history/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/build-an-ios-terminal-toolbar-with-swiftterm</loc>
<image:image>
<image:loc>https://codekits.shop/blog/build-an-ios-terminal-toolbar-with-swiftterm/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/build-browser-encrypted-one-time-text-links</loc>
<image:image>
<image:loc>https://codekits.shop/blog/build-browser-encrypted-one-time-text-links/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/build-code-preview-project-file-tree</loc>
<image:image>
<image:loc>https://codekits.shop/blog/build-code-preview-project-file-tree/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/build-expiring-download-links-with-nextjs-and-mysql</loc>
<image:image>
<image:loc>https://codekits.shop/blog/build-expiring-download-links-with-nextjs-and-mysql/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/build-nextjs-memory-limited-vps</loc>
<image:image>
<image:loc>https://codekits.shop/blog/build-nextjs-memory-limited-vps/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/clean-up-expired-uploads-without-deleting-active-files</loc>
<image:image>
<image:loc>https://codekits.shop/blog/clean-up-expired-uploads-without-deleting-active-files/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/client-enquiry-dashboard-status-filters</loc>
<image:image>
<image:loc>https://codekits.shop/blog/client-enquiry-dashboard-status-filters/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/connect-a-swiftui-screen-to-a-node-js-api</loc>
<image:image>
<image:loc>https://codekits.shop/blog/connect-a-swiftui-screen-to-a-node-js-api/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/create-useful-audit-logs-without-recording-secrets</loc>
<image:image>
<image:loc>https://codekits.shop/blog/create-useful-audit-logs-without-recording-secrets/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/deliver-protected-downloads-after-verified-payment</loc>
<image:image>
<image:loc>https://codekits.shop/blog/deliver-protected-downloads-after-verified-payment/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/deploy-frontend-backend-database</loc>
<image:image>
<image:loc>https://codekits.shop/blog/deploy-frontend-backend-database/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/deploy-nextjs-ubuntu-nginx-systemd</loc>
<image:image>
<image:loc>https://codekits.shop/blog/deploy-nextjs-ubuntu-nginx-systemd/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/diagnose-nginx-502-after-deployment</loc>
<image:image>
<image:loc>https://codekits.shop/blog/diagnose-nginx-502-after-deployment/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/email-multiple-recipients-without-exposing-addresses</loc>
<image:image>
<image:loc>https://codekits.shop/blog/email-multiple-recipients-without-exposing-addresses/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/encrypt-sensitive-mysql-fields-in-nodejs</loc>
<image:image>
<image:loc>https://codekits.shop/blog/encrypt-sensitive-mysql-fields-in-nodejs/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/fix-iphone-form-auto-zoom</loc>
<image:image>
<image:loc>https://codekits.shop/blog/fix-iphone-form-auto-zoom/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/fix-mobile-menu-scroll-jump</loc>
<image:image>
<image:loc>https://codekits.shop/blog/fix-mobile-menu-scroll-jump/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/fix-react-video-pausing-restarting</loc>
<image:image>
<image:loc>https://codekits.shop/blog/fix-react-video-pausing-restarting/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/handle-stripe-webhook-retries-without-duplicate-orders</loc>
<image:image>
<image:loc>https://codekits.shop/blog/handle-stripe-webhook-retries-without-duplicate-orders/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/keep-checkout-prices-under-server-control</loc>
<image:image>
<image:loc>https://codekits.shop/blog/keep-checkout-prices-under-server-control/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/linux-ports-processes-services</loc>
<image:image>
<image:loc>https://codekits.shop/blog/linux-ports-processes-services/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/make-download-limits-safe-under-concurrent-requests</loc>
<image:image>
<image:loc>https://codekits.shop/blog/make-download-limits-safe-under-concurrent-requests/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/make-read-once-links-race-safe-with-mysql</loc>
<image:image>
<image:loc>https://codekits.shop/blog/make-read-once-links-race-safe-with-mysql/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/migrate-php-blog-nextjs-urls</loc>
<image:image>
<image:loc>https://codekits.shop/blog/migrate-php-blog-nextjs-urls/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/mobile-navigation-every-link-reachable</loc>
<image:image>
<image:loc>https://codekits.shop/blog/mobile-navigation-every-link-reachable/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/monitor-https-certificate-expiry</loc>
<image:image>
<image:loc>https://codekits.shop/blog/monitor-https-certificate-expiry/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/mysql-app-user-backup-restore</loc>
<image:image>
<image:loc>https://codekits.shop/blog/mysql-app-user-backup-restore/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/mysql-date-filters-pagination</loc>
<image:image>
<image:loc>https://codekits.shop/blog/mysql-date-filters-pagination/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/newsletter-signup-with-encryption-and-unsubscribe</loc>
<image:image>
<image:loc>https://codekits.shop/blog/newsletter-signup-with-encryption-and-unsubscribe/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/nextjs-markdown-blog-metadata</loc>
<image:image>
<image:loc>https://codekits.shop/blog/nextjs-markdown-blog-metadata/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/offline-desktop-notes-sqlite</loc>
<image:image>
<image:loc>https://codekits.shop/blog/offline-desktop-notes-sqlite/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/php-mysql-blog-prepared-statements</loc>
<image:image>
<image:loc>https://codekits.shop/blog/php-mysql-blog-prepared-statements/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/portrait-app-demos-without-cropping</loc>
<image:image>
<image:loc>https://codekits.shop/blog/portrait-app-demos-without-cropping/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/protect-admin-apis-and-private-downloads</loc>
<image:image>
<image:loc>https://codekits.shop/blog/protect-admin-apis-and-private-downloads/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/reconnect-ios-ssh-after-backgrounding</loc>
<image:image>
<image:loc>https://codekits.shop/blog/reconnect-ios-ssh-after-backgrounding/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/resume-large-uploads-after-iphone-browser-suspension</loc>
<image:image>
<image:loc>https://codekits.shop/blog/resume-large-uploads-after-iphone-browser-suspension/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/revoke-temporary-links-and-understand-the-limits</loc>
<image:image>
<image:loc>https://codekits.shop/blog/revoke-temporary-links-and-understand-the-limits/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/rotate-encryption-keys-without-losing-records</loc>
<image:image>
<image:loc>https://codekits.shop/blog/rotate-encryption-keys-without-losing-records/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/route-applications-one-nginx-domain</loc>
<image:image>
<image:loc>https://codekits.shop/blog/route-applications-one-nginx-domain/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/rust-background-jobs-cancellation</loc>
<image:image>
<image:loc>https://codekits.shop/blog/rust-background-jobs-cancellation/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/rust-batch-file-renamer-dry-run</loc>
<image:image>
<image:loc>https://codekits.shop/blog/rust-batch-file-renamer-dry-run/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/rust-large-file-log-viewer</loc>
<image:image>
<image:loc>https://codekits.shop/blog/rust-large-file-log-viewer/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/rust-tauri-react-desktop-starter</loc>
<image:image>
<image:loc>https://codekits.shop/blog/rust-tauri-react-desktop-starter/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/save-contact-enquiries-and-queue-email-notifications</loc>
<image:image>
<image:loc>https://codekits.shop/blog/save-contact-enquiries-and-queue-email-notifications/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/server-health-email-alerts-systemd</loc>
<image:image>
<image:loc>https://codekits.shop/blog/server-health-email-alerts-systemd/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/share-contacts-with-qr-codes-in-swiftui</loc>
<image:image>
<image:loc>https://codekits.shop/blog/share-contacts-with-qr-codes-in-swiftui/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/stage-nextjs-release-rollback</loc>
<image:image>
<image:loc>https://codekits.shop/blog/stage-nextjs-release-rollback/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/stop-link-previews-from-consuming-one-time-secrets</loc>
<image:image>
<image:loc>https://codekits.shop/blog/stop-link-previews-from-consuming-one-time-secrets/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/store-ios-credentials-in-keychain-with-swift</loc>
<image:image>
<image:loc>https://codekits.shop/blog/store-ios-credentials-in-keychain-with-swift/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/stream-large-uploads-in-nextjs</loc>
<image:image>
<image:loc>https://codekits.shop/blog/stream-large-uploads-in-nextjs/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/stream-zip-downloads-without-buffering-whole-folders</loc>
<image:image>
<image:loc>https://codekits.shop/blog/stream-zip-downloads-without-buffering-whole-folders/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/switch-light-dark-themes-without-flash</loc>
<image:image>
<image:loc>https://codekits.shop/blog/switch-light-dark-themes-without-flash/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/tauri-rust-command-validation</loc>
<image:image>
<image:loc>https://codekits.shop/blog/tauri-rust-command-validation/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/typed-portfolio-project-data</loc>
<image:image>
<image:loc>https://codekits.shop/blog/typed-portfolio-project-data/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/ubuntu-vps-first-setup</loc>
<image:image>
<image:loc>https://codekits.shop/blog/ubuntu-vps-first-setup/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/upload-folders-and-preserve-their-directory-tree</loc>
<image:image>
<image:loc>https://codekits.shop/blog/upload-folders-and-preserve-their-directory-tree/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/upload-large-ios-files-with-progress-and-cancellation</loc>
<image:image>
<image:loc>https://codekits.shop/blog/upload-large-ios-files-with-progress-and-cancellation/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/verify-ssh-host-fingerprints-in-an-ios-client</loc>
<image:image>
<image:loc>https://codekits.shop/blog/verify-ssh-host-fingerprints-in-an-ios-client/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/visitor-map-approximate-locations</loc>
<image:image>
<image:loc>https://codekits.shop/blog/visitor-map-approximate-locations/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/website-node-api-mysql-one-vps</loc>
<image:image>
<image:loc>https://codekits.shop/blog/website-node-api-mysql-one-vps/cover.svg</image:loc>
</image:image>
<lastmod>2026-10-26T09:03:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/create-an-encrypted-usb-folder-for-app-archives</loc>
<image:image>
<image:loc>https://codekits.shop/blog-media/screenshot-2026-10-20-at-01-25-23-d2119218.webp</image:loc>
</image:image>
<lastmod>2026-10-19T23:58:00.000Z</lastmod>
</url>
<url>
<loc>https://codekits.shop/blog/building-digital-product-stores</loc>
<image:image>
<image:loc>https://codekits.shop/introducing.png</image:loc>
</image:image>
<lastmod>2024-08-29T00:00:00.000Z</lastmod>
</url>
</urlset>
