Supabase Boundaries 是一个针对 Supabase 项目的服务边界模式技能,目标是把数据库访问代码收拢到受控的封装层中,避免访问逻辑散落在各处。
用途
该技能用于在使用 Supabase 的项目中,建立并执行清晰的服务边界。它适用于以下情况:项目本身使用 Supabase;正在创建或重构 Supabase 访问代码;需要为数据库访问强制执行服务边界。
主要能力
技能定义了一组“不可协商”的规则:
- 绝不从组件(components)、hooks、utils 或路由处理器(route handlers)中直接调用 Supabase。
- 把访问集中到专用的 Supabase 服务封装中,例如 services/supabase/*。
- 封装必须保持小而专注,并且带有类型。
- 绝不在单一 Supabase 客户端模块(例如 lib/supabase.ts)或 Supabase 服务封装之外导入 @supabase/supabase-js。
规则内容
技能提供两条规则:
- supabase-access-rule:把 Supabase 访问隔离在服务封装中。
- supabase-services-usage:路由处理器、hooks、utils 和组件不得直接调用 Supabase。 每个规则文件包含规则重要性的简要说明、正确与错误的代码示例,以及额外背景和最佳实践。
使用方式
按需阅读对应的规则文件以获取详细说明和代码示例: rules/supabase-access-rule.md rules/supabase-services-usage.md
关联技能
busirocket-core-conventions,涉及服务边界与结构。
适用场景
适合需要统一 Supabase 访问入口、减少耦合、并在团队中推行一致访问规范的项目。
限制
该技能仅面向 Supabase 项目;资料未提供关于收费、价格、安装命令或具体平台支持的说明,因此这些内容暂未提供。