Sobre el proyecto
SpacetimeDB es un proyecto de código abierto de Clockwork Labs que combina una base de datos relacional con un entorno de ejecución de servidor. En lugar de implementar un servidor web o de juego separado entre los clientes y la base de datos, los desarrolladores escriben la lógica de la aplicación como un módulo en Rust, C#, TypeScript o C++. El módulo define tablas y reductores (funciones que mutan los datos). Los clientes se conectan directamente a la base de datos, llaman a los reductores y se suscriben a las tablas. Cuando los datos cambian, SpacetimeDB envía automáticamente las actualizaciones a los clientes suscritos, por lo que los clientes no necesitan hacer polling ni volver a cargar. El README indica que todo el estado de la aplicación se mantiene en memoria para un acceso rápido, mientras que un registro de commits en el disco proporciona durabilidad y recuperación de fallos, y que el sistema ofrece garantías ACID. Se describe como utilizado para el MMORPG BitCraft Online, cuyo backend se ejecuta como un único módulo. La instalación está disponible mediante scripts de shell en macOS/Linux y PowerShell en Windows, seguida de un inicio de sesión CLI que se autentica con GitHub. Un comando de inicio rápido crea un proyecto a partir de una plantilla, lo publica en Maincloud y observa los cambios de archivo para reconstruir y volver a publicar automáticamente. La base de datos también se puede ejecutar con Docker o compilar desde el código fuente con Cargo. Los módulos de servidor son compatibles con Rust, C#, TypeScript y C++; los SDK de cliente admiten TypeScript (React, Next.js, Vue, Svelte, Angular, Node.js, Bun, Deno), Rust, C# (independiente y Unity) y C++ (Unreal Engine). La documentación cubre guías de inicio rápido, conceptos básicos, tutoriales, despliegue, referencias de CLI y SQL. El proyecto está licenciado bajo la Business Source License 1.1, que se convierte en AGPL v3.0 con una excepción de vinculación después de unos años, por lo que los usuarios no están obligados a abrir el código fuente de su propio código.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.