Introduction
Spooky is a reactive, local-first application framework built on top of SurrealDB. It bridges the gap between the database and the client, providing live queries that update incrementally and efficiently with strong type safety.
Supported Frameworks
Spooky provides official client libraries for multiple platforms:
- TypeScript / JavaScript (SolidJS, Vanilla)
- Flutter / Dart (Mobile/Desktop)
- Rust (Core library and WASM Modules)
Key Features
1. Live Queries
Instead of fetching data once, your components subscribe to Incantations. When data changes on the server (or locally), your UI updates instantly. No manual refetching required.
2. Local-First
Spooky uses IndexedDB to store a local replica of your data. This means your app works perfectly offline. Changes are queued and synchronized automatically when the connection returns.
3. End-to-End Type Safety
Your database schema is your application schema. Spooky generates TypeScript interfaces directly from your .surql files, ensuring you catch errors at compile time, not runtime.
Getting Started
Check out the Installation guide to set up your environment, or jump straight into a framework guide: