learn and share notes on atproto (wip) 馃
malfestio.stormlightlabs.org/
readability
solid
axum
atproto
srs
1-- User preferences for onboarding and personalization
2-- Tracks onboarding completion and user persona selection
3
4CREATE TABLE user_prefs (
5 id UUID PRIMARY KEY,
6 user_did TEXT NOT NULL UNIQUE,
7 persona TEXT, -- 'learner' | 'creator' | 'curator' | NULL
8 onboarding_completed_at TIMESTAMPTZ,
9 tutorial_deck_completed BOOLEAN NOT NULL DEFAULT FALSE,
10 created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
11 updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
12);
13
14CREATE INDEX idx_user_prefs_did ON user_prefs(user_did);
15
16CREATE TRIGGER update_user_prefs_updated_at BEFORE UPDATE ON user_prefs
17 FOR EACH ROW EXECUTE FUNCTION update_updated_at_column();