Build a Flutter app with Very Good CLI and Supabase
Article Summary
Very Good Ventures shows how to build a production-ready Flutter app with Supabase that achieves 100% test coverage. This isn't your typical Firebase clone tutorial.
This comprehensive guide from Very Good Ventures walks through building a Flutter authentication app using Supabase as a Firebase alternative, combined with Very Good CLI, Flutter Bloc, and layered architecture. The tutorial covers everything from database setup to native configuration across Android, iOS, and web platforms.
Key Takeaways
- Implements email magic link authentication with deep linking across three platforms
- Uses Very Good CLI to scaffold modular packages with complete test coverage
- Integrates PostgreSQL database with row-level security policies via Supabase
- Leverages Flow Builder for authentication state-based navigation
- Separates concerns into five distinct packages for maintainability
The tutorial demonstrates how to build a fully tested, production-grade Flutter app using Supabase's PostgreSQL backend and extensive auth provider options beyond typical Firebase offerings.
About This Article
The team needed to build email magic link authentication that worked across Android, iOS, and web. They also had to keep the code quality high enough for production.
Very Good Ventures built five separate packages using Very Good CLI. These included SupabaseAuthClient, SupabaseDatabaseClient, and UserRepository. This split authentication, database work, and business logic into different layers. They used Flutter Bloc to manage state across the app.
All packages reached 100% test coverage. This made it easier for developers to build Flutter apps that scale well and stay testable. The apps connect to PostgreSQL databases with row-level security policies through Supabase.