tool: add spacetimedb

This commit is contained in:
2026-04-13 00:27:24 -07:00
parent fde245058e
commit b1a769c84d
20 changed files with 441 additions and 2 deletions

37
spacetimedb/src/index.ts Normal file
View File

@@ -0,0 +1,37 @@
import { schema, table, t } from 'spacetimedb/server';
const spacetimedb = schema({
person: table(
{ public: true },
{
name: t.string(),
}
),
});
export default spacetimedb;
export const init = spacetimedb.init(_ctx => {
// Called when the module is initially published
});
export const onConnect = spacetimedb.clientConnected(_ctx => {
// Called every time a new client connects
});
export const onDisconnect = spacetimedb.clientDisconnected(_ctx => {
// Called every time a client disconnects
});
export const add = spacetimedb.reducer(
{ name: t.string() },
(ctx, { name }) => {
ctx.db.person.insert({ name });
}
);
export const sayHello = spacetimedb.reducer(ctx => {
for (const person of ctx.db.person.iter()) {
console.info(`Hello, ${person.name}!`);
}
console.info('Hello, World!');
});