mcpField
S
spacetimedb

spacetimedb

github.com/danmossa数据与数据库2171 次安装19 周前更新
代码仓库

关于 spacetimedb

这是面向 SpacetimeDB 开发者的技能集合入口;SpacetimeDB 将数据库、服务端逻辑和实时客户端同步结合为后端。路由器按任务引导至模块、客户端、运维和参考主题的专门技能。

主要功能

  1. 01将任务分流至专门技能
  2. 02涵盖数据库模块与架构
  3. 03提供 reducers、procedures 和 views 指引
  4. 04涉及客户端 SDK 与生成的绑定
  5. 05提供部署、CLI 和 SQL 指引

适用场景

  1. 01查找 SpacetimeDB 任务指引
  2. 02开发模块的表与逻辑
  3. 03使用生成的绑定构建客户端
  4. 04查询部署或 CLI 操作

安装

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

$npx skills add https://github.com/danmossa/spacetimedb-skills --skill spacetimedb

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

附带文件references/index.md

详细介绍

SpacetimeDB 技能集合的入口。SpacetimeDB 将数据库、服务端应用逻辑和实时客户端同步整合到一个可编程后端中。

如何使用此技能

  1. 在下方的路由表中找到与任务最匹配的专用技能。
  2. 加载该技能的 SKILL.md 并遵循其中的指导。
  3. 仅打开与当前子任务相关的 Markdown 文件。
  4. 如果没有合适的子技能,请先在最可能相关的技能中搜索已复制的参考资料,再查阅外部文档。

默认情况下不要加载所有 SpacetimeDB 参考文件。先查看专门技能正文,只有在正文说明需要详细信息或任务要求准确的 API 语法时,才加载参考文件。

核心模型

  • 数据库是模块的一个已发布实例;模块定义表、reducer、procedure、视图和公开的客户端接口。
  • 表用于存储状态。客户端可以订阅公开表;私有表仅限服务端使用,除非通过视图或 reducer 公开。
  • Reducer 是用于更改状态的事务入口点。执行失败的 reducer 会回滚其对表的变更。
  • Procedure 可以返回值并执行 HTTP 请求等外部操作;需要写入数据库时,必须显式开启事务。
  • 视图公开派生的只读数据。如果结果与调用方无关,优先使用匿名视图。
  • 客户端使用生成的绑定,通过 DbConnection 连接,订阅行,读取本地缓存,并调用 reducer 或 procedure。

有关每项技能的详细说明和触发关键词,请参阅 references/index.md。

技能路由表

基础知识
技能适用情形...
spacetimedb-quickstarts安装 SpacetimeDB、了解架构、启动新应用或选择框架快速入门指南时。
spacetimedb-cli运行 spacetime 命令:init、build、publish、generate、call、sql、logs、dev,以及配置服务端或独立配置时。
spacetimedb-databases创建、开发、发布、迁移或运维 SpacetimeDB 数据库模块时。
spacetimedb-upgrade将项目从 SpacetimeDB 1.0 迁移到 2.0,或修复受这些破坏性变更影响的代码时。
模块架构与逻辑
技能加载时机……
spacetimedb-tables定义表、列、索引、约束、主键、事件表、调度表、访问权限或表性能时。
spacetimedb-reducers编写 reducer、生命周期 reducer、reducer 上下文代码、计划任务 reducer、表变更或 reducer 错误处理时。
spacetimedb-procedures编写过程、从过程中调用 reducer、发起 HTTP 请求或返回过程值时。
spacetimedb-views定义视图、视图参数、基于 SQL 的投影和面向客户端的派生数据时。
spacetimedb-auth处理身份验证、SpacetimeAuth、Auth0、Clerk、身份验证声明、授权、行级安全或拒绝客户端连接时。
客户端
技能加载时机……
spacetimedb-clients涉及客户端 SDK 的通用概念:代码生成、连接生命周期、本地缓存、订阅、reducer 调用和更新语义时。
spacetimedb-client-typescript涉及 TypeScript、JavaScript、React、Vue、Svelte、浏览器、Node、Bun、Deno、Next.js、Nuxt、Remix、TanStack、Angular 或生成的 TS 绑定时。
spacetimedb-client-rust使用 Rust 客户端 SDK、Rust 生成的绑定、Rust 连接代码、回调、订阅和 reducer 调用时。
spacetimedb-client-c-sharp使用 C# 或 Unity 客户端 SDK、生成的 C# 绑定、回调、订阅、reducer 调用和 Unity 集成时。
spacetimedb-client-unreal使用 Unreal Engine 客户端 SDK、Unreal 生成的绑定、连接轮询、订阅和 reducer 时。
运维与参考
技能在……时加载
spacetimedb-deploy部署到 Maincloud、自托管、独立服务设置、密钥轮换、日志记录或 PGWire。
spacetimedb-http使用 HTTP 端点处理身份、数据库操作、reducer 调用、SQL 或授权标头。
spacetimedb-sql编写 SpacetimeDB SQL,用于订阅、CLI 查询、HTTP SQL、DML、字面量、标识符或 SQL 性能。
spacetimedb-serializationBSATN、SATS JSON、AlgebraicType/AlgebraicValue 编码、WebAssembly ABI 或底层模块主机调用。
spacetimedb-tutorials跟随或改编聊天应用、Unity Blackhol.io 或 Unreal Blackhol.io 教程。

后备方案

如果任务涉及路由器未涵盖的 SpacetimeDB API,请在最可能相关技能的 references/ 目录中搜索复制的参考文件,然后在此仓库可用时检查 src/raw-data-output。

评论

支持 Markdown