This package has been deprecated

Author message:

The release candidates for emberfire v3 are now at emberfire@next

emberfire-exp
TypeScript icon, indicating that this package has built-in type declarations

3.0.0-rc.1-4 • Public • Published

EmberFire Build Status Version Monthly Downloads Ember Observer Score

EmberFire is the officially supported adapter for using Firebase with Ember

Join the Firebase Google Group to ask technical questions, share apps you've built, and chat with other developers in the community. You can also find us in the Firebase Community Slack (look for the #ember room) or Stack Overflow.


WARNING: Master branch is the work in progress for version 3 of Emberfire. You can find version 2 here, if you're looking for documentation or to contribute to stable. Learn more about the rewrite effort here.


Why EmberFire?

  • Offically supported - Maintained by the Firebase team
  • Ember Data Adapters - Cloud Firestore and Realtime Database adapters for Ember Data allow you to persist your models in Firebase
  • Ember Services - firebase and firebase-app services allow direct access to the underlying Firebase SDK instance
  • Realtime Bindings - Listen for realtime updates to your Firebase backed Ember Data models using the provided realtime-listener service or the RealtimeRouteMixin
  • Authentication Providers - Integrate Firebase Authentication with your Ember application easily with providers for Ember Simple Auth and Torii
  • Offline Enabled - Persist Ember Data models offline automatically with FirestoreAdapter
  • Fastboot Compatible - Perform initial rendering and fetching of your models server-side to increase application performance

Installation

$ ember install emberfire

Example use

// app/adapters/application.js
import FirestoreAdapter from 'emberfire/adapters/firestore';
 
export default FirestoreAdapter.extend({
    enablePersistence: true,
    persistenceSettings: { experimentalTabSynchronization: true }
});
// app/models/article.js
import DS from 'ember-data';
const { attr, belongsTo, hasMany } = DS;
 
export default DS.Model.extend({
    title: attr('string'),
    body: attr('string'),
    publishedAt: attr('date'),
    author: belongsTo('user'),
    comments: hasMany('comments', { subcollection: true }),
});
// app/routes/articles.js
import Route from '@ember/routing/route';
import RealtimeRouteMixin from 'emberfire/mixins/realtime-route';
 
export default Route.extend(RealtimeRouteMixin, {
    model() {
        return this.store.query('article', { orderBy: 'publishedAt' });
    }
})

Documentation

Compatibility

Please consult this table when selecting your version of EmberFire and Firebase SDK:

Ember Data EmberFire Firebase SDK
3.0+ 3.x 5.x
2.3+ 2.x 3.x
2.0 - 2.2 1.6.x 2.x
1.13 1.5.x 2.x

Migration Guides

Contributing

If you'd like to contribute to EmberFire, please first read through our contribution guidelines. Local setup instructions are available here.

Readme

Keywords

Package Sidebar

Install

npm i emberfire-exp

Weekly Downloads

0

Version

3.0.0-rc.1-4

License

MIT

Unpacked Size

192 kB

Total Files

76

Last publish

Collaborators

  • emberfire
  • jamesdaniels