Core Concepts
This section covers the fundamental concepts you need to understand to build applications with SpacetimeDB.
Databases
Learn how SpacetimeDB databases work, including modules, publishing, and transactions.
- What is a Database? - Understanding SpacetimeDB databases and modules
- Building & Publishing - Deploy your module to SpacetimeDB
- Transactions - How atomicity and rollback work
- Migrations - Evolving your schema over time
Tables
Define your data model with tables, columns, and indexes.
- Tables Overview - Declaring and using tables
- Column Types - Supported column types
- Indexes - Optimizing queries with indexes
- Access Permissions - Public vs private tables
- Schedule Tables - Time-based operations
Functions
Implement your application logic with reducers, procedures, and views.
- Reducers - Transactional functions that modify state
- Procedures - Functions that can make external HTTP calls
- Views - Read-only computed queries
Subscriptions
Enable real-time updates for your clients.
- Subscription Reference - How to subscribe to data
- Subscription Semantics - Understanding update guarantees
Authentication
Secure your application with SpacetimeAuth.
- Authentication - Using OpenID Connect (OIDC) for identity and access control
- SpacetimeAuth Overview - Managed authentication service
- Auth Claims - Using identity and roles
Client SDKs
Connect your frontend to SpacetimeDB.
- SDK Overview - Available client SDKs
- Code Generation - Generate type-safe bindings
- TypeScript, Rust, C#, Unreal - Language-specific references