<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Monster Cone</title><description>Monster Cone 的个人技术博客，记录前端开发、Next.js、React、Vue、TypeScript、全栈实践、独立开发项目、效率工具和生活思考。</description><link>https://www.dxin.cc/</link><item><title>国内服务器如何通过 Cloudflare Worker 实现 Google 登录</title><link>https://www.dxin.cc/blog/google-oauth-relay-worker/</link><guid isPermaLink="true">https://www.dxin.cc/blog/google-oauth-relay-worker/</guid><description>以我开源的 google-oauth-relay 为例，介绍国内服务器如何通过 Cloudflare Worker 中转 Google 登录所需的后端请求。</description><pubDate>Sun, 06 Sep 2026 16:00:00 GMT</pubDate></item><item><title>Nginx Proxy Manager 可视化配置 Nginx：搭配 Dozzle 和 NginxPulse 查看日志</title><link>https://www.dxin.cc/blog/nginx-proxy-manager-dozzle-nginxpulse/</link><guid isPermaLink="true">https://www.dxin.cc/blog/nginx-proxy-manager-dozzle-nginxpulse/</guid><description>基于 Docker Compose 部署 Nginx Proxy Manager、Dozzle 和 NginxPulse，使用 NPM 网页界面可视化配置 Nginx，并分别查看 Docker 日志和 Nginx 访问日志。</description><pubDate>Sun, 06 Sep 2026 16:00:00 GMT</pubDate></item><item><title>IndexNow 是什么？Next.js 博客接入搜索引擎主动推送</title><link>https://www.dxin.cc/blog/indexnow-nextjs-vercel/</link><guid isPermaLink="true">https://www.dxin.cc/blog/indexnow-nextjs-vercel/</guid><description>介绍 IndexNow 的工作原理、适用场景，以及如何在 Next.js 与 Vercel 部署流程中自动提交站点 URL，加快搜索引擎发现新内容。</description><pubDate>Fri, 03 Jul 2026 00:00:00 GMT</pubDate></item><item><title>使用 QStash 实现 FCM 定时推送通知</title><link>https://www.dxin.cc/blog/fcm-scheduled-push-qstash/</link><guid isPermaLink="true">https://www.dxin.cc/blog/fcm-scheduled-push-qstash/</guid><description>介绍如何使用 QStash 延时消息能力为 Firebase Cloud Messaging 实现定时推送通知，适用于 Cloudflare Workers、Vercel、Node.js 等 Serverless 场景。</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate></item><item><title>利用 Cloudflare Worker 保持 Supabase 一直处于活跃状态</title><link>https://www.dxin.cc/blog/supabase-keepalive/</link><guid isPermaLink="true">https://www.dxin.cc/blog/supabase-keepalive/</guid><description>介绍如何使用 Cloudflare Workers 和 Cron Triggers 定时访问 Supabase，避免免费项目在低流量阶段进入自动暂停状态。</description><pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Next.js 16 中优雅地使用 SVG</title><link>https://www.dxin.cc/blog/nextjs-svg/</link><guid isPermaLink="true">https://www.dxin.cc/blog/nextjs-svg/</guid><description>在 Next.js 16 中用 @svgr/webpack 将 SVG 作为 React 组件导入，并掌握尺寸、颜色以及 mask / defs ID 冲突的处理方式。</description><pubDate>Sun, 12 Apr 2026 00:00:00 GMT</pubDate></item><item><title>Flutter Dio 并发请求 Token 刷新处理方案</title><link>https://www.dxin.cc/blog/dio-token-refresh-concurrent-requests/</link><guid isPermaLink="true">https://www.dxin.cc/blog/dio-token-refresh-concurrent-requests/</guid><description>介绍 Flutter 使用 Dio 时，如何在高并发请求下只触发一次 Token 刷新，并通过 Completer 挂起等待中的请求队列。</description><pubDate>Sat, 04 Apr 2026 00:00:00 GMT</pubDate></item><item><title>用 Cloudflare Workers 搭建 FCM 推送中转服务</title><link>https://www.dxin.cc/blog/cloudflare-workers-fcm/</link><guid isPermaLink="true">https://www.dxin.cc/blog/cloudflare-workers-fcm/</guid><description>介绍如何借助 Cloudflare Workers 与 Hono 搭建可用的 FCM 推送中转服务，并通过 OAuth 鉴权与 KV 缓存提升部署效率和可用性。</description><pubDate>Sat, 28 Mar 2026 00:00:00 GMT</pubDate></item><item><title>Zustand + IndexedDB 实战：打造可离线的前端状态管理</title><link>https://www.dxin.cc/blog/zustand-indexeddb-offline-storage/</link><guid isPermaLink="true">https://www.dxin.cc/blog/zustand-indexeddb-offline-storage/</guid><description>介绍如何使用 Zustand 结合 IndexedDB 实现可离线的前端状态管理，兼顾数据持久化能力与用户体验。</description><pubDate>Sat, 21 Mar 2026 00:00:00 GMT</pubDate></item><item><title>不用额外 State：Tailwind CSS 实现可编辑标题</title><link>https://www.dxin.cc/blog/tailwind-editable-title/</link><guid isPermaLink="true">https://www.dxin.cc/blog/tailwind-editable-title/</guid><description>使用 Tailwind CSS 的交互能力实现无额外状态管理的可编辑标题，减少前端状态冗余并提升交互体验。</description><pubDate>Sat, 14 Mar 2026 00:00:00 GMT</pubDate></item><item><title>博客迁移实录：从 Hugo 到 Next.js + Tailwind CSS</title><link>https://www.dxin.cc/blog/hugo-migrate-nextjs-tailwindcss/</link><guid isPermaLink="true">https://www.dxin.cc/blog/hugo-migrate-nextjs-tailwindcss/</guid><description>记录博客从 Hugo 迁移到 Next.js 与 Tailwind CSS 的原因、实施步骤，以及部署和发布链路中的实际取舍。</description><pubDate>Sat, 07 Mar 2026 00:00:00 GMT</pubDate></item><item><title>Koa 跨域 Set-Cookie 不生效？CORS 场景排查与解决</title><link>https://www.dxin.cc/blog/koa-set-cookie/</link><guid isPermaLink="true">https://www.dxin.cc/blog/koa-set-cookie/</guid><description>分析 Koa 在跨域场景下 Set-Cookie 不生效的常见原因，并给出浏览器、服务端与代理层的完整排查思路。</description><pubDate>Sat, 28 Feb 2026 00:00:00 GMT</pubDate></item><item><title>Flutter App CI/CD 实战：用 GitHub Actions 自动构建与发布</title><link>https://www.dxin.cc/blog/flutter-ci-cd/</link><guid isPermaLink="true">https://www.dxin.cc/blog/flutter-ci-cd/</guid><description>结合 GitHub Actions 打造 Flutter 应用的自动构建、签名与分发流程，减少手动发布成本并提升交付效率。</description><pubDate>Sat, 21 Feb 2026 00:00:00 GMT</pubDate></item><item><title>Vue 3 自定义指令实战：封装通用 v-loading</title><link>https://www.dxin.cc/blog/vue-directives/</link><guid isPermaLink="true">https://www.dxin.cc/blog/vue-directives/</guid><description>通过 Vue 3 自定义指令实现通用 v-loading 效果，提升页面交互一致性和业务复用效率。</description><pubDate>Sat, 14 Feb 2026 00:00:00 GMT</pubDate></item><item><title>用 Docker 部署 MinIO：搭建自己的对象存储服务</title><link>https://www.dxin.cc/blog/minio/</link><guid isPermaLink="true">https://www.dxin.cc/blog/minio/</guid><description>使用 Docker 部署单机版 MinIO，并结合预签名上传接口实现更灵活的对象存储能力，适合图片与文件上传场景。</description><pubDate>Sat, 07 Feb 2026 00:00:00 GMT</pubDate></item><item><title>移动端适配方案对比：REM 和 VW 到底怎么选</title><link>https://www.dxin.cc/blog/mobile-adaptive/</link><guid isPermaLink="true">https://www.dxin.cc/blog/mobile-adaptive/</guid><description>对比移动端常见的 REM 与 VW 适配方案，梳理核心原理、优缺点与适用场景，帮助你根据项目特点做选择。</description><pubDate>Sat, 31 Jan 2026 00:00:00 GMT</pubDate></item><item><title>Flutter Deeplink 接入实战：从链接直达 App 页面</title><link>https://www.dxin.cc/blog/flutter-deeplink/</link><guid isPermaLink="true">https://www.dxin.cc/blog/flutter-deeplink/</guid><description>介绍 Flutter 中 Deeplink 的接入方式、路由处理流程，以及从链接唤起 App 并跳转指定页面的关键细节。</description><pubDate>Sat, 24 Jan 2026 00:00:00 GMT</pubDate></item><item><title>Flutter Dio 封装实践：统一请求、解析与错误处理</title><link>https://www.dxin.cc/blog/flutter-dio/</link><guid isPermaLink="true">https://www.dxin.cc/blog/flutter-dio/</guid><description>总结一套更清晰的 Flutter Dio 封装方式，让请求、数据解析和错误处理保持统一，便于团队维护与扩展。</description><pubDate>Sat, 17 Jan 2026 00:00:00 GMT</pubDate></item><item><title>FCM 迁移 HTTP v1 API：鉴权、发送与避坑</title><link>https://www.dxin.cc/blog/fcm-v1-api/</link><guid isPermaLink="true">https://www.dxin.cc/blog/fcm-v1-api/</guid><description>记录 Firebase Cloud Messaging 从旧版接口迁移到 HTTP v1 API 的关键步骤、鉴权方式，以及迁移过程中常见的报错与处理方式。</description><pubDate>Sat, 10 Jan 2026 00:00:00 GMT</pubDate></item><item><title>Vite + React + TypeScript 实战：从零搭建组件库</title><link>https://www.dxin.cc/blog/vite-react-components-library/</link><guid isPermaLink="true">https://www.dxin.cc/blog/vite-react-components-library/</guid><description>记录使用 Vite、React、TypeScript 与 Tailwind CSS 构建组件库的流程与打包要点，适合搭建可发布的前端组件库。</description><pubDate>Sat, 03 Jan 2026 00:00:00 GMT</pubDate></item><item><title>Chrome 扩展如何只在指定路由注入 content.js</title><link>https://www.dxin.cc/blog/chrome-extensions-match-content/</link><guid isPermaLink="true">https://www.dxin.cc/blog/chrome-extensions-match-content/</guid><description>解决 Chrome 扩展在 SPA 场景下无法按子路由精确注入 content.js 的问题，适合需要按页面状态动态执行脚本的场景。</description><pubDate>Sat, 27 Dec 2025 00:00:00 GMT</pubDate></item><item><title>Hyper-V 虚拟机 AMD GPU 直通实战</title><link>https://www.dxin.cc/blog/Hyper-V-GPU/</link><guid isPermaLink="true">https://www.dxin.cc/blog/Hyper-V-GPU/</guid><description>记录在 Hyper-V 中为虚拟机配置 AMD GPU 直通的步骤、限制条件与排错经验，适合需要提升图形性能的场景。</description><pubDate>Sat, 20 Dec 2025 00:00:00 GMT</pubDate></item><item><title>OpenCV 滑块验证码识别：模板匹配实战</title><link>https://www.dxin.cc/blog/opencv-sliding-verification/</link><guid isPermaLink="true">https://www.dxin.cc/blog/opencv-sliding-verification/</guid><description>基于 OpenCV 模板匹配分析滑块验证码的定位思路与实现流程，适合了解图像识别在自动化场景中的应用。</description><pubDate>Sat, 13 Dec 2025 00:00:00 GMT</pubDate></item><item><title>Windows 编译 PaddleOCR DLL：给 Python 调用的完整流程</title><link>https://www.dxin.cc/blog/paddleocr-dll/</link><guid isPermaLink="true">https://www.dxin.cc/blog/paddleocr-dll/</guid><description>记录在 Windows 平台将 PaddleOCR 编译为 DLL，并供 Python 调用时的关键步骤、依赖处理与注意事项。</description><pubDate>Sat, 06 Dec 2025 00:00:00 GMT</pubDate></item><item><title>Tesseract 5.0 LSTM 训练实战：优化字体并提升识别率</title><link>https://www.dxin.cc/blog/tesseract-lstm-train/</link><guid isPermaLink="true">https://www.dxin.cc/blog/tesseract-lstm-train/</guid><description>介绍 Tesseract 5.0 的 LSTM 训练流程，并分享字体优化、数据准备和识别率提升的实践经验。</description><pubDate>Sat, 29 Nov 2025 00:00:00 GMT</pubDate></item><item><title>YOLOv8 自定义目标检测训练实战</title><link>https://www.dxin.cc/blog/yolov8-predict-train/</link><guid isPermaLink="true">https://www.dxin.cc/blog/yolov8-predict-train/</guid><description>总结 YOLOv8 自定义目标检测模型的训练流程、数据准备与推理实践，帮助你更快完成自己的检测任务。</description><pubDate>Sat, 22 Nov 2025 00:00:00 GMT</pubDate></item><item><title>Tailwind CSS 动态生成 animation-delay 实用类</title><link>https://www.dxin.cc/blog/tailwind-animation-delay/</link><guid isPermaLink="true">https://www.dxin.cc/blog/tailwind-animation-delay/</guid><description>利用 Tailwind CSS 的 matchUtilities 动态生成 animation-delay 实用类，让动画配置更灵活、组件复用更自然。</description><pubDate>Sat, 15 Nov 2025 00:00:00 GMT</pubDate></item><item><title>PyInstaller 打包 OCR：构建静态版 Tesseract 可执行程序</title><link>https://www.dxin.cc/blog/build-static-tesseract/</link><guid isPermaLink="true">https://www.dxin.cc/blog/build-static-tesseract/</guid><description>记录如何通过 vcpkg 构建静态版 Tesseract，并配合 PyInstaller 一起分发，解决桌面 OCR 工具依赖复杂、部署麻烦的问题。</description><pubDate>Sat, 08 Nov 2025 00:00:00 GMT</pubDate></item><item><title>Vue 3 封装移动端消息对话框组件：支持 Promise 调用</title><link>https://www.dxin.cc/blog/mobile-message-component/</link><guid isPermaLink="true">https://www.dxin.cc/blog/mobile-message-component/</guid><description>介绍如何在 Vue 3 中封装支持 Promise 调用的移动端消息对话框组件，提升交互一致性和组件复用性。</description><pubDate>Sat, 01 Nov 2025 00:00:00 GMT</pubDate></item><item><title>Vue 3 + Element Plus 封装阿里云 OSS 上传组件</title><link>https://www.dxin.cc/blog/el-upload-ali-oss/</link><guid isPermaLink="true">https://www.dxin.cc/blog/el-upload-ali-oss/</guid><description>基于 Vue 3 和 Element Plus 封装阿里云 OSS 上传组件，简化前端上传流程并提升业务复用效率。</description><pubDate>Sat, 25 Oct 2025 00:00:00 GMT</pubDate></item><item><title>Promise Pool 实战：优雅控制异步并发数量</title><link>https://www.dxin.cc/blog/promise-pool/</link><guid isPermaLink="true">https://www.dxin.cc/blog/promise-pool/</guid><description>通过 Promise Pool 控制异步任务并发数量，避免请求拥塞、资源争抢和瞬时流量过高的问题，适合上传和批量请求场景。</description><pubDate>Sat, 18 Oct 2025 00:00:00 GMT</pubDate></item><item><title>JavaScript 懒加载实战：图片与动画的性能优化方案</title><link>https://www.dxin.cc/blog/lazyloading/</link><guid isPermaLink="true">https://www.dxin.cc/blog/lazyloading/</guid><description>介绍图片与动画懒加载的常见实现方式，帮助你在不牺牲体验的前提下优化页面性能。</description><pubDate>Sat, 11 Oct 2025 00:00:00 GMT</pubDate></item><item><title>Ubuntu 开发环境初始化脚本：一键安装 Git、Docker 和 Nginx</title><link>https://www.dxin.cc/blog/ubuntu-development-environment/</link><guid isPermaLink="true">https://www.dxin.cc/blog/ubuntu-development-environment/</guid><description>用脚本快速完成 Ubuntu 开发环境初始化，包括软件源替换、Git、Docker 与 Nginx 等基础依赖安装。</description><pubDate>Sat, 27 Sep 2025 00:00:00 GMT</pubDate></item><item><title>Fetch 请求封装实战：打造轻量级前端请求库</title><link>https://www.dxin.cc/blog/fetch/</link><guid isPermaLink="true">https://www.dxin.cc/blog/fetch/</guid><description>从请求封装思路出发，基于原生 Fetch 构建更轻量的前端请求工具，减少依赖体积并统一请求处理逻辑。</description><pubDate>Sat, 20 Sep 2025 00:00:00 GMT</pubDate></item><item><title>前端开发常用 JavaScript 方法整理</title><link>https://www.dxin.cc/blog/common-method/</link><guid isPermaLink="true">https://www.dxin.cc/blog/common-method/</guid><description>整理前端开发中常用的 JavaScript 方法与处理思路，适合作为日常编码时的高频参考清单。</description><pubDate>Sat, 13 Sep 2025 00:00:00 GMT</pubDate></item><item><title>GitHub Webhook 自动部署 Hugo 博客到服务器</title><link>https://www.dxin.cc/blog/webhook-deploy/</link><guid isPermaLink="true">https://www.dxin.cc/blog/webhook-deploy/</guid><description>介绍如何通过 GitHub Webhook 实现静态博客自动部署到自有服务器，减少手动发布成本并提升更新效率。</description><pubDate>Sat, 16 Aug 2025 00:00:00 GMT</pubDate></item><item><title>Git 提交前自动格式化：Husky + lint-staged 实战</title><link>https://www.dxin.cc/blog/husky-auto-format/</link><guid isPermaLink="true">https://www.dxin.cc/blog/husky-auto-format/</guid><description>通过 Husky、lint-staged、ESLint 与 Prettier 在提交前自动格式化代码，减少多人协作中的风格分歧和无效 diff。</description><pubDate>Sat, 09 Aug 2025 00:00:00 GMT</pubDate></item><item><title>移动端 VW 适配实战：用 PostCSS 实现自适应布局</title><link>https://www.dxin.cc/blog/mobile-adaptation/</link><guid isPermaLink="true">https://www.dxin.cc/blog/mobile-adaptation/</guid><description>介绍如何通过 postcss-px-to-viewport 将 px 转换为 vw，完成移动端页面的自适应布局，并补充配置思路与实践注意事项。</description><pubDate>Sat, 02 Aug 2025 00:00:00 GMT</pubDate></item></channel></rss>