Lessons from Building a Supabase Powered Flutter app
summary
An app called Anchor for ADHD developers uses FlutterFlow with Supabase as the backend and documents concrete fixes: implement RLS policies to stop unauthorized post visibility, change views from security definer to security invoker so row policies apply, add indexes to cut a join lookup from ~0.8ms to ~0.5–0.6ms (≈21% faster), move client logic into Postgres RPCs and triggers, and replace duplicate FCM entries with an upsert to stop users receiving tens of identical notifications.
AI-written summary · about
chapters (19)
- 0:00Introduction
- 3:00ADHD dev app
- 5:10Front-end meets databases
- 7:42Data visibility mistake
- 10:10Row-level security
- 12:39Querying multiple tables
- 13:22Postgres views for queries
- 14:47Security definer vs invoker
- 16:10Restricted project visibility
- 17:53Performance with users
- 18:59Slow queries with indexes
- 21:04Logic to RPC functions
- 22:50Edge vs RPC functions
- 23:52RPC overuse issues
- 24:34Automating with triggers
- 25:16Fixing duplicate notifications
- 28:27Versioning views
- 29:30Versioning RPC functions
- 30:31Final tips
related talks
38mBring the power of Postgres to your Flutter app with Supabase
29mArchitecting the Reactive App with Flutter
37mBuilding scalable, maintainable and robust apps in Flutter
27mBuilding with best practices in FlutterFlow
42mLet's fire the Flutter
49mFlutter In Practice – Tips and tricks for writing Flutter apps, from Start to Finish
21mBuild a reactive Flutter App
34mProduction Fluttering
