finds.dev← search

// the find

supabase/supabase-flutter

★ 1,003 · Dart · MIT · updated Jun 2026

Flutter integration for Supabase. This package makes it simple for developers to build secure and scalable products.

Official Flutter/Dart client for Supabase, maintained by the Supabase team itself. It's a Melos monorepo covering auth (gotrue), database (postgrest), realtime (websocket channels), storage, and edge functions — one package per Supabase service. The target audience is Flutter developers who want Supabase as their backend without rolling their own API wrappers.

First-party maintenance means API changes in Supabase services ship here fast, not months later via a community fork. The monorepo split is sensible — you can pull only the packages you need rather than taking the whole stack. Test infrastructure is real: each sub-package has Docker Compose infra that spins up actual Supabase services, so tests hit real endpoints rather than mocks. The realtime package handles both IO and web targets via conditional imports, which is the correct Flutter pattern rather than ignoring one platform.

1,003 stars is low for an official client of a project Supabase's size — suggests the Flutter ecosystem is an afterthought relative to the JS SDK, which means you may hit rough edges that the JS side resolved years ago. The README is thin to the point of being useless; actual documentation lives entirely on supabase.com, so if the docs site is wrong or outdated you have no fallback. Error handling in the postgrest package surfaces raw HTTP status codes without much structure, which makes distinguishing a schema mismatch from a network timeout annoying in practice. Realtime presence and broadcast are in the same channel abstraction as Postgres CDC, which sounds elegant until you need different retry or backoff behavior for each — the shared retry_timer.dart applies uniformly.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →