supabase-realtime
Supabase Realtime
Expert implementation guide for Supabase Realtime features focusing on scalable patterns and best practices.
Core Principles
Always use broadcast over postgres_changes - postgres_changes is single-threaded and doesn't scale. Use broadcast with database triggers for all database change notifications.
Use dedicated topics - Never broadcast to global topics. Use granular patterns like room:123:messages, user:456:notifications.
Private channels by default - Set private: true for all database-triggered channels. Enable private-only mode in production.
Quick Reference
Naming Conventions
- Topics:
scope:entity:id(e.g.,room:123:messages) - Events:
entity_actionin snake_case (e.g.,message_created)
Client Setup Pattern
More from raudbjorn/claude
svelte-expert
Expert Svelte/SvelteKit development assistant for building components, utilities, and applications. Use when creating Svelte components, SvelteKit applications, implementing reactive patterns, handling state management, working with stores, transitions, animations, or any Svelte/SvelteKit development task. Includes comprehensive documentation access, code validation with svelte-autofixer, and playground link generation.
15supabase
Comprehensive Supabase development expert covering Edge Functions, database schema management, migrations, PostgreSQL functions, and RLS policies. Use for any Supabase development including TypeScript/Deno Edge Functions, declarative schema management, SQL formatting, migration creation, database function authoring with SECURITY INVOKER, and RLS policy implementation with auth.uid() and auth.jwt().
12supabase-storage
Expert guide for Supabase Storage including bucket management, file operations, URL generation, and RLS policies. Use when working with file uploads/downloads, creating public or private buckets, generating signed URLs, implementing storage RLS policies, handling resumable uploads, image transformations, or any Supabase Storage-related tasks.
10skill-creator
Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends Claude's capabilities with specialized knowledge, workflows, or tool integrations.
8