firebase_facilitator
firebase_facilitator is a versatile package that streamlines CRUD operations with Firestore in Flutter applications. It provides mixins for handling common tasks like Create, Read, Update, and Delete, along with optional logging functionality.
Platform Support
Android | iOS | Web | macOS | Windows | Linux |
---|---|---|---|---|---|
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Requirements
- Flutter >= 3.3.0
cloud_firestore: ^5.4.4
fake_cloud_firestore: ^3.0.3
firebase_auth: ^5.3.1
(optional, for authentication)firebase_core: ^3.6.0
logger: ^2.4.0
(optional, for logging)
Usage
In this video, we demonstrate how to streamline Firestore CRUD operations in Flutter using the firebase_facilitator package. Learn how to quickly implement Firestore read and write functionality, as well as optional logging, with just a few lines of code. Watch as we create a service to fetch all documents from a Firestore collection and convert them into model objects. This package helps save time and effort, making your Firestore integration more efficient.
To use the firebase_facilitator package, simply import the necessary mixins and integrate them into your data repository class for seamless Firestore operations.
import 'package:firebase_facilitator/mixin/crud_repos.dart';
import 'package:firebase_facilitator/mixin/firestore_read_service.dart';
import 'package:firebase_facilitator/mixin/firestore_write_service.dart';
import 'package:firebase_facilitator/mixin/logger_service.dart';
class ReadWriteReposExample
with FirestoreReadRepository, FirestoreWriteRepository {
@override
FirestoreReadService get firestoreReadService => FirestoreServiceImpl();
@override
FirestoreWriteService get firestoreWriteService =>
FirestoreWriteServiceImpl();
@override
LoggerService? get loggerService => LoggerServiceImpl(true); // Optional
@override
String get collection => "collection_example";
}
The ReadWriteReposExample
class handles Firestore operations like adding, fetching, and deleting documents, allowing developers to focus on business logic while abstracting the complexity of Firestore.