SpacetimeDB Installatie
Complete installatie-instructies voor de ontwikkelomgeving.
Vereisten
| Software | Versie | Nodig voor |
|---|---|---|
| Rust | 1.75+ | Backend compilatie |
| Node.js | 20+ | Admin panel |
| SpacetimeDB CLI | 1.0+ | Database beheer |
Stap 1: Rust Installeren
macOS / Linux
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source $HOME/.cargo/env
Windows
Download en run: https://rustup.rs
WASM Target Toevoegen
rustup target add wasm32-unknown-unknown
Verificatie
rustc --version
# rustc 1.75.0 of hoger
Stap 2: SpacetimeDB CLI
Automatische Installatie
# macOS / Linux
curl -fsSL https://install.spacetimedb.com | bash
# Windows (PowerShell)
irm https://install.spacetimedb.com/windows | iex
Handmatige Installatie
Download van: https://github.com/clockworklabs/SpacetimeDB/releases
Verificatie
spacetime version
# SpacetimeDB CLI version: 1.0.0 of hoger
Stap 3: Node.js (voor Admin Panel)
Via nvm (aanbevolen)
# nvm installeren
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
# Node.js installeren
nvm install 20
nvm use 20
Verificatie
node --version
# v20.0.0 of hoger
npm --version
# 10.0.0 of hoger
Stap 4: Project Opzetten
Repository Clonen
git clone https://github.com/corbifex/milenas-cozy-treehouse-club.git
cd milenas-cozy-treehouse-club
Backend Dependencies
cd server
cargo build
Admin Panel Dependencies
cd admin
npm install
Stap 5: Lokale SpacetimeDB Server
Server Starten
# In een aparte terminal
spacetime start
Dit start een lokale server op http://localhost:3000.
Server Stoppen
# Ctrl+C in de terminal
# Of:
spacetime stop
Stap 6: Module Publiceren
Build
cd server
spacetime build
Publish
spacetime publish milenas-treehouse --clear-database
Let op
--clear-database wist alle bestaande data. Gebruik alleen tijdens development.
Verificatie
# Bekijk database info
spacetime describe milenas-treehouse
# Bekijk logs
spacetime logs milenas-treehouse
Development Workflow
Dagelijkse Ontwikkeling
# Terminal 1: SpacetimeDB server
spacetime start
# Terminal 2: Backend wijzigingen
cd server
# Na wijzigingen:
spacetime build && spacetime publish milenas-treehouse
# Terminal 3: Admin panel
cd admin
npm run dev
Na Schema Wijzigingen
Als je tabellen wijzigt, moet je de database clearen:
spacetime publish milenas-treehouse --clear-database
Of migraties schrijven (geavanceerd).
Troubleshooting
Fout: "spacetime: command not found"
# Herlaad shell configuratie
source ~/.bashrc # of ~/.zshrc
# Of voeg aan PATH toe
export PATH="$HOME/.spacetime/bin:$PATH"
Fout: "Cannot connect to server"
# Check of server draait
spacetime status
# Start server opnieuw
spacetime stop
spacetime start
Fout: "WASM build failed"
# Installeer target opnieuw
rustup target add wasm32-unknown-unknown
# Update Rust
rustup update
Fout: "Module publish failed"
# Check server logs
spacetime logs milenas-treehouse
# Probeer met clear database
spacetime publish milenas-treehouse --clear-database
IDE Setup
VS Code Extensions
Aanbevolen extensions:
- rust-analyzer - Rust language support
- Even Better TOML - Cargo.toml support
- Error Lens - Inline errors
settings.json
{
"rust-analyzer.cargo.target": "wasm32-unknown-unknown",
"rust-analyzer.checkOnSave.allTargets": false
}
Volgende Stappen
- Lees Module Structuur
- Bekijk het Database Schema
- Test Reducers