Self Host Group Chat App (firebase + clean architecture)
Packages we are using:
flutter_bloc : Widgets that make it easy to integrate blocs and cubits into Flutter. Built to work with package:bloc. The Bloc library provides very good 🦄 tooling and compared to other state management solutions that use Streams, it’s a pure gem.
get_it : This is a simple Service Locator for Dart and Flutter projects with some additional goodies highly inspired by Splat. It can be used instead of
Provider to access objects e.g. from your UI.
equatable: Being able to compare objects in
Dart often involves having to override the
== operator as well as
firebase : is the most amazing back-end as a service (BaaS) developed by Google for mobile and web application development that helps you build, improve, grow your app and deliver richer app experiences.
firebase_storage : Cloud Storage for Firebase is a powerful, simple, and cost-effective object storage service built for Google scale. The Firebase SDKs for Cloud Storage add Google security to file uploads and downloads for your Firebase apps, regardless of network quality.
cloud_firestore : Cloud Firestore is a flexible, scalable database for mobile, web, and server development from Firebase and Google Cloud Platform.
firebase_auth : Firebase Authentication aims to make building secure authentication systems easy, while improving the sign-in and onboarding experience for end users. It provides an end-to-end identity solution, supporting email and password accounts, phone auth, and Google, Twitter, Facebook, and GitHub login, and more.