mcpField
E
extension-backend

extension-backend

github.com/quangpl开发64167 次安装7 周前更新
代码仓库

关于 extension-backend

用于规划和构建 Chrome 扩展后端 API 的技能,推荐使用 NestJS 和 MongoDB。它指导开发者梳理需求、搭建项目、设计端点并落实安全措施,适用于认证、授权、同步和 API 代理等服务。

主要功能

  1. 01后端需求规划
  2. 02NestJS 与 MongoDB 搭建指南
  3. 03认证和授权端点模式
  4. 04支付 Webhook 与同步 API 模式
  5. 05安全清单和参考资料

适用场景

  1. 01为扩展添加账户认证
  2. 02验证许可证或订阅状态
  3. 03跨设备同步扩展数据
  4. 04代理外部 API 以隐藏密钥

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/quangpl/browser-extension-skills --skill extension-backend

安装后在 Claude Code 中输入/extension-backend确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
extension-api-patterns.md
mongoose-patterns.md
nestjs-setup.md
security-patterns.md

详细介绍

扩展后端

🚀 升级至 Premium 在 https://app.extensionbooster.net/dashboard/services/extension-ai-kit 获取 Premium 版本

为 Chrome 扩展构建安全、易于维护的后端 API。推荐技术栈:NestJS + MongoDB (Mongoose)。

何时启用

当扩展开发需要以下功能时,启用此技能:

  • 许可证验证 / 支付 Webhook
  • 用户身份验证 / 账户管理
  • 跨设备数据同步
  • 外部 API 代理(对扩展隐藏 API 密钥)
  • 任何服务端逻辑

工作流(请按此执行)

步骤 1:请用户确认需求
  1. 是否需要后端?(说明原因:API 密钥、身份验证、支付、同步)
  2. 技术栈偏好:NestJS + MongoDB(推荐)还是自定义方案?
  3. 托管目标:Vercel / Railway / Fly.io / AWS / 自托管?
  4. 所需功能(从以下选取):
    • 用户身份验证(通过 chrome.identity 进行 Google OAuth)
    • 许可证 / 订阅验证
    • 支付 Webhook(Stripe、Paddle 等)
    • 数据同步 / 存储 API
    • 外部 API 代理
    • 速率限制
步骤 2:获取框架文档

使用 docs-seeker 技能获取最新文档:

步骤 3:搭建后端
npx @nestjs/cli new extension-backend --strict --package-manager pnpm
cd extension-backend
pnpm add @nestjs/mongoose mongoose @nestjs/config class-validator class-transformer
pnpm add helmet @nestjs/throttler
pnpm add -D @types/express
步骤 4:项目结构
src/
├── main.ts                          # Bootstrap, CORS, helmet, validation
├── app.module.ts                    # Root module
├── config/
│   └── configuration.ts             # Env-based config
├── auth/
│   ├── auth.module.ts               # Auth module
│   ├── auth.controller.ts           # POST /auth/verify-token
│   ├── auth.service.ts              # Token validation logic
│   └── guards/auth.guard.ts         # Global auth guard
├── license/
│   ├── license.module.ts
│   ├── license.controller.ts        # GET /license/verify
│   ├── license.service.ts           # License CRUD
│   └── schemas/license.schema.ts    # Mongoose schema
├── webhook/
│   ├── webhook.module.ts
│   ├── webhook.controller.ts        # POST /webhook/stripe
│   └── webhook.service.ts           # Process payment events
└── common/
    ├── filters/http-exception.filter.ts
    ├── interceptors/logging.interceptor.ts
    └── dto/                          # Shared DTOs
步骤 5:必要端点
方法端点用途身份验证
POST/auth/verify-token验证 Google OAuth 令牌否
GET/license/verify检查用户订阅状态是
POST/webhook/stripe接收支付事件签名
GET/health健康检查否
步骤 6:安全检查清单

实现详情请参阅 references/security-patterns.md。

  • 已启用 Helmet 中间件
  • CORS 限制为 chrome-extension://<ID> 来源
  • 速率限制(ThrottlerModule)
  • 输入验证(对所有 DTO 使用 class-validator)
  • Webhook 签名验证
  • 响应正文中不包含机密信息
  • 防止 MongoDB 注入(Mongoose 默认会进行清理)
  • 生产环境仅使用 HTTPS

参考资料

  • references/nestjs-setup.md — 引导配置、模块、CORS、环境变量配置
  • references/security-patterns.md — 身份验证守卫、速率限制、Webhook 验证、CORS
  • references/mongoose-patterns.md — Schema、服务、查询、索引
  • references/extension-api-patterns.md — 扩展调用的端点、令牌流程

相关技能

  • extension-payment — 支付网关集成(调用此后端)
  • extension-dev — 扩展端功能开发
  • extension-analyze — 扩展和后端的安全审计

评论

支持 Markdown