Skip to content

Software Development at Program Tom LTD

Place for coding, programming, development and software in general.

Menu
  • Blog
  • PDF Booklets
  • Dev Utils & Content
  • Java Spring Boot Or Web Apps
  • English
    • български
    • English
    • Español
    • Português
    • हिन्दी
    • Русский
    • Deutsch
    • Français
    • Italiano
    • العربية
  • About Us
  • Flutter Apps
Menu
Clean rx_bloc_cli project from Firebase

Clean rx_bloc_cli project from Firebase

Posted on March 28, 2024 by Toma Velev

In this small blog post You could find the files that need to be changed to get clean rx_bloc_cli project from Firebase Dependencies. This is follow-up from a previous blog post to get it running on web.

JavaSscript

  • firebase-messaging-sw.js 
  • remove firebase_web_config.js
  • related js code from index.html

Dart Dependencies

Remove firebase dependencies from pubspec.yaml and Build Runner – Build. This sill put your project on fire/red/ so you will know where to touch. You may need to reopen the IDE if it doesn’t update the cache.

Changes in Dart Files

  • app_setup.dart
  • firebase_messaging_callbacks.dart
  • firebase_options.dart
  • family_tree.dart
  • analytics_repository.dart
  • push_notification_repository
  • analytics_interceptor.dart
  • family_tree_with_dependencies.dart – this file probably better be last – as some of the clean-up may change the amount of dependency injection parameters to classes.

In long term this clean-up is not good solution, because will need some implementation for the Cloud Features in any meaningful app. The features are:

  • Analytics – What the user visits /when/how much time
  • Crashlitics – Any Issue may be logged, troubleshooted and resolved in very close to real time i if you have the appropiate info.
  • Push Notifications Messaging – Push Notification is one of the Social Features to increase user engagement.
  • Deep Linking / Dynamic Links 

Better approach will be:

  • Create internal Models/Data Transfer Object –  for every object that is imported from firebase
  • Create functional interfaces that accept these DTOs, but that are identical to the needed by firebase.
  • Create Firebase Specific Implementation 

This way I/ you will be able to swap the cloud provider to different one – just by:

  • implementing the interface 
  • mapping parameters to the different providers
  • replacing in the Depencency Injection – the implementation of the interfaces.
  • What are ways to Optimize the backend endpoints in Spring Boot
  • Flutter image flickers
  • Could a Flutter App save a Flag even after uninstall
  • Could iOS flutter app logs be viewed while running in release mode – started after previous closed state
  • 6 Addictive Mobile Game Ideas Inspired by Flappy Bird’s Simplicity

Categories

  • Apps (20)
  • ChatGPT (19)
  • Choosing a Framework (38)
  • Flutter (206)
  • Graphical User Interface (13)
  • Marketing (114)
  • Software Development (270)
  • Spring (43)
  • StartUp (21)
  • Uncategorized (4)
  • Uncategorized (15)
  • Vaadin (14)

Tags

Algorithms (9) crypto (29) flutterdev (39) General (86) Java (7) QR & Bar Codes (3) Software Dev Choices (33) Spring Boot (1) standards (1) Theme (3) User Authentication & Authorization (9) User Experience (10) Utilities (19) WordPress (11)

Product categories

  • All Technologies (83)
    • Flutter Apps (23)
    • GPT (4)
    • Java (38)
    • Native Android (3)
    • PHP (9)
    • Spring (Boot) / Quarkus (35)
    • Utils (15)
    • Vaadin 24+ (27)
    • Vaadin 8 (1)
  • Apps (18)
    • Employees DB (1)
    • Notes (6)
    • Personal Budget (1)
    • Recipes Book (1)
    • Stuff Organizer (1)
    • To-Do (2)
  • PDF Books (3)
  • Source Code Generators (8)

Recent Posts

  • What are ways to Optimize the backend endpoints in Spring Boot
  • Flutter image flickers
  • Could a Flutter App save a Flag even after uninstall
  • Could iOS flutter app logs be viewed while running in release mode – started after previous closed state
  • 6 Addictive Mobile Game Ideas Inspired by Flappy Bird’s Simplicity

Post Categories

  • Apps (20)
  • ChatGPT (19)
  • Choosing a Framework (38)
  • Flutter (206)
  • Graphical User Interface (13)
  • Marketing (114)
  • Software Development (270)
  • Spring (43)
  • StartUp (21)
  • Uncategorized (4)
  • Uncategorized (15)
  • Vaadin (14)