emberfire-utils icon indicating copy to clipboard operation
emberfire-utils copied to clipboard

Split project into separate addons?

Open mikkopaderes opened this issue 7 years ago • 6 comments

Right now everything's being merged (adapter, utility service, ui components, etc.) into this one addon. I'm thinking of separating it into these:

  • ember-firebase-utilities - Useful utilities for Firebase
  • ember-firebase-ui - Ember implementation of FirebaseUI for Web
  • ember-firebase-adapter - Unofficial Ember Adapter for Firebase

My main reasoning is that the adapter API is still in flux and may cause unnecessary version bumps to non-adapter users.

Pros:

  • Version bumps will be specific to changes on a feature
    • Currently, if you're just using firebase-util, a version bump may happen that just directly involves the adapter or vise-versa.
  • No need to configure tree-shaking in your ember-cli-build.js.
  • Can possibly have a community maintained org revolving around Firebase addons.
    • e.g. ember-firebase/ember-firebase-utilities

Cons:

  • Extra work on updating Ember coverage per addon

mikkopaderes avatar Aug 29 '17 04:08 mikkopaderes

Hi, I like your idea. If I may jump in your project, have you thought about something like ember-firebase-serializer as well?

htkm avatar Aug 29 '17 20:08 htkm

@htkm no because I think the serializer should always be distributed with the adapter. It'll be part of ember-firebase-adapter.

mikkopaderes avatar Aug 30 '17 01:08 mikkopaderes

Oh, that makes sense. Do you think ember-firebase-adapter still will require emberfire as a dependency like the current version does?

htkm avatar Aug 30 '17 08:08 htkm

@htkm, yup it will. ember-firebase-adapter will still use the firebase service from emberfire. Also, session management via torii is still in emberfire so there's that. Maybe there can be a ember-firebase-session one of these days but for now it's unnecessary as the current session management works unlike the adapter where there's a lot of things that's lacking in my opinion.

The only time that I think we're going to have that ember-firebase-session is if this comment came through in which I'm expecting that emberfire just wants to be a barebones addon that just exposes a firebase service that communities can work upon.

mikkopaderes avatar Aug 30 '17 09:08 mikkopaderes

Cool, thank you for the detailed answer. Splitting up the project into small ones sounds good to me.

htkm avatar Aug 31 '17 16:08 htkm

  • https://github.com/rmmmp/ember-firebase-adapter
  • https://github.com/rmmmp/ember-firebaseui

I'm leaning towards to dropping the utility service. Before, it was useful because of some power features but they've since been split over to the adapter side. What's left now of the service are merely just sugar syntax over firebase.

I might just do one last release here before deprecating the addon.

mikkopaderes avatar Sep 10 '17 16:09 mikkopaderes