request: Let `flutterfire config` ACTUALLY handle all of the configurations needed
Is there an existing feature request for this?
- [X] I have searched the existing issues.
Command
flutterfire configure --plugin [plugin]
Description
flutterfire configure is now offering a quick way to configure a new Flutter + Firebase project (when it comes to Firebase Core), and that's cool!
Anyhow, I feel like this should also apply to all the non-beta plugins Firebase has to offer. Say that our project needs Firestore. Then, the average developer should be able to do:
flutter pub add cloud_firestore
flutterfire configure --plugin cloud_firestore
As an example, in this case the plugin should ensure:
- The minimum iOS target is compatible to the new plugin added: if not, change that;
- The multidex support for Android is enabled: if not, change that;
- The build times are optimized; if not, change that.
... et voilà! The average developer is good to go. The objective is to expect flutter configure to handle a lot of the details the average developer shouldn't even be aware of and that usually consume A LOT of time, googling, error-prone configuring. Stuff that isn't making anyone productive and that actually is just a detail / procedure that everyone must implement anyways.
Reasoning
This request arises from the bad developer experience needed to start a Firebase + Flutter project as described in this issue.
Summary:
- Starting a new Flutter + Firebase project isn't as easy as it is sold;
- Several smells and obstacles are guaranteed to be encountered**;
- As described in the aforementioned issue, and as cited in other issues*, optimizing build times is becoming painful.
Additional context and comments
*issues citing problems with manually optimizing build times:
- https://github.com/invertase/firestore-ios-sdk-frameworks/issues/53
- https://github.com/firebase/flutterfire/issues/9015
** issues citing smells and un-intuitive config behavior:
- https://github.com/firebase/flutterfire/issues/7753