TypeScript JavaScript Other
Failed to load latest commit information.
docs docs(firestore): Fixing documentation (#1741) Jun 23, 2018
src chore(): lean only on `firebase` types and compatibility with 5.0.4 (#… Jun 20, 2018
test fix(): Switching over to `firebase` from `@firebase/*` (#1677) May 22, 2018
tools fix(): Switching over to `firebase` from `@firebase/*` (#1677) May 22, 2018
.editorconfig fix(providers): make AoT compile friendly (#410) Aug 11, 2016
.gitignore fix(): remove .DS_Store (#1303) Oct 25, 2017
.npmignore fix(typings): add ambient zone typings Aug 9, 2017
.travis.yml feat(): support Angular and rxjs 6 (#1625) May 14, 2018
CHANGELOG.md chore(): lean only on `firebase` types and compatibility with 5.0.4 (#… Jun 20, 2018
CONTRIBUTING.md docs(afs): AngularFire docs and more (#2) Oct 3, 2017
ISSUE_TEMPLATE.md chore(build): clean up package.json Aug 4, 2017
LICENSE chore: add license, readme, package Jan 11, 2016
PULL_REQUEST_TEMPLATE.md chore(): Update PR template with yarn Jan 23, 2018
README.md docs(): rxjs 6 (#1639) May 14, 2018
angularfire2.ts chore: rename main module from angularfire to angularfire2 Feb 12, 2016
karma-test-shim.js feat(packaging): add aot-friendly packaging Sep 16, 2016
karma.conf.js fix(): Switching over to `firebase` from `@firebase/*` (#1677) May 22, 2018
package.json chore(): lean only on `firebase` types and compatibility with 5.0.4 (#… Jun 20, 2018
publish.sh chore(release): Release beta.7 Jan 13, 2017
yarn.lock chore(): lean only on `firebase` types and compatibility with 5.0.4 (#… Jun 20, 2018



The official library for Firebase and Angular

Build Status Join the chat at https://gitter.im/angular/angularfire2

Status: Release candidate

What is AngularFire?

  • Observable based - Use the power of RxJS, Angular, and Firebase.
  • Realtime bindings - Synchronize data in realtime.
  • Authentication - Log users in with a variety of providers and monitor authentication state in realtime.
  • Offline Data - Store data offline automatically with AngularFirestore.
  • ngrx friendly - Integrate with ngrx using AngularFire's action based APIs.

Quick links


Stackblitz Template - Remember to set your Firebase configuration in app/app.module.ts.

Upgrading to v5.0? Check out our guide.

Having troubles? Get help on the Firebase Mailing List (offically supported), the Firebase Community Slack (look for the #angularfire2 room), Gitter, or Stack Overflow.


npm install firebase angularfire2 --save

Example use:

import { Component } from '@angular/core';
import { AngularFirestore } from 'angularfire2/firestore';
import { Observable } from 'rxjs';

  selector: 'app-root',
  template: `
    <li *ngFor="let item of items | async">
      {{ item.name }}
export class MyApp {
  items: Observable<any[]>;
  constructor(db: AngularFirestore) {
    this.items = db.collection('items').valueChanges();

Developer Guide

Getting started

Interacting with your database(s)

Firebase offers two cloud-based, client-accessible database solutions that support realtime data syncing. Learn about the differences between them in the Firebase Documentation.

Cloud Firestore

AngularFirestore allows you to work with Cloud Firestore, the new flagship database for mobile app development. It improves on the successes of Realtime Database with a new, more intuitive data model. Cloud Firestore also features richer, faster queries and scales better than Realtime Database.

Realtime Database

AngularFireDatabase allows you to work with the Realtime Database, Firebase's original database. It's an efficient, low-latency solution for mobile apps that require synced states across clients in realtime.

Authenticate users

Upload files

Deploy to Firebase Hosting