-
Notifications
You must be signed in to change notification settings - Fork 666
V8 module host #2839
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
V8 module host #2839
Conversation
|
This is awesome, especially for full-stack development! Leveraging JavaScript’s vast npm ecosystem makes this a really solid implementation. Looking forward to the official release! 🥳 |
|
Because I am really looking forward to the TypeScript bindings, I created a usability-enhancement plugin in my spare time to prepare for the future TypeScript version of spacetimedb. Experimental testing is already completed. If the TypeScript module bindings are further improved, I can continue to update this plugin. Repository link: https://github.com/citizenll/rolldown-plugin-spacetimedb
import { registerReducer, registerType, type } from 'spacetimedb';
const Foo = registerType(
'Foo',
type.product({
bar: type.f32,
baz: type.string,
count: type.i64
})
);
registerReducer('beepboop', [type.array(type.f32), type.bool, Foo], (x, y, z) => {
// z.bar;
});
import { useReducer, f32, bool, str, i64 } from 'spacetimedb/composable';
type Foo = {
bar: f32,
baz: str,
count: i64,
}
useReducer('beepboop', (x: f32[], y: bool, z: Foo) => {
// z.bar
}); |
4aef3b2 to
cf83468
Compare
cf83468 to
e5f0adc
Compare
baebea3 to
23d99ce
Compare
c455c9f to
0dc5011
Compare
13673bd to
04dc539
Compare
Description of Changes
Very WIP , and will be for a while.
API and ABI breaking changes
Expected complexity level and risk
Testing