2.0.7 • Published 8 years ago
firebase-thermite v2.0.7
firebase-thermite
What is it?
firebase-thermite is a library of RxJS observables for Firebase.
Why might you need it?
You might need it if you want to use RxJS observables and the official Angular library for Firebase - AngularFire2 - does not suit your requirements.
How does it differ from AngularFire2?
- It does not have a dependency on Angular.
- It has a type information-only dependency on
firebase, so it can be used withfirebaseand withfirebase-admin. * - Its database observables emit appropriately typed values - rather than values typed as
any. - Its database observables support value selectors.
- Its database list observables support key selectors.
- It includes database observables that emit
loaded,added,changedandremovedevents. - It does not implement mutation methods on database observables - use the
refitself, instead. - It does not implement declarative queries that contain
Subjectcomponents - use aSubjectthat emits a declarative query and usetoQueryand create an observable within aswitchMap, instead. - It includes an infinite list database observable.
- It includes a map database observable.
- The Angular modules are split into a separate library:
firebase-thermite-ng
* Actually, this is no longer the case. In recent releases, the typings in firebase and firebase-admin have diverged. And adding some preprocessing to account for the differences (similar to what's in firebase-nightlight) is on my TODO list.
Usage
At the moment, the tests will have to serve as the usage documentation.
Testing
To run the tests, you will need to provide several environment variables via a .env file. See constants-spec.ts and env-cmd - which is used to include the environment variables in the bundle.