Skip to content

licon/angularfire

 
 

Repository files navigation

AngularFire

Build Status Coverage Status Version

AngularFire is the officially supported AngularJS binding for Firebase. Firebase is a full backend so you don't need servers to build your Angular app. AngularFire provides you with the $firebase service which allows you to easily keep your $scope variables in sync with your Firebase backend.

Downloading AngularFire

In order to use AngularFire in your project, you need to include the following files in your HTML:

<!-- AngularJS -->
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.0-rc.0/angular.min.js"></script>

<!-- Firebase -->
<script src="https://cdn.firebase.com/js/client/1.0.21/firebase.js"></script>

<!-- AngularFire -->
<script src="https://cdn.firebase.com/libs/angularfire/0.8.2/angularfire.min.js"></script>

Use the URL above to download both the minified and non-minified versions of AngularFire from the Firebase CDN. You can also download them from the releases page of this GitHub repository. Firebase and Angular can be downloaded directly from their respective websites.

You can also install AngularFire via Bower and its dependencies will be downloaded automatically:

$ bower install angularfire --save

Once you've included AngularFire and its dependencies into your project, you will have access to the $firebase service.

You can also start hacking on AngularFire in a matter of seconds on Nitrous.IO:

Hack firebase/angularfire on Nitrous.IO

Getting Started with Firebase

AngularFire requires Firebase in order to sync data. You can sign up here for a free account.

Documentation

The Firebase docs have a quickstart, guide, and full API reference for AngularFire.

We also have a tutorial to help you get started with AngularFire.

Join our Firebase + Angular Google Group to ask questions, provide feedback, and share apps you've built with AngularFire.

Contributing

If you'd like to contribute to AngularFire, you'll need to run the following commands to get your environment set up:

$ git clone https://github.com/firebase/angularfire.git
$ cd angularfire            # go to the angularfire directory
$ npm install -g grunt-cli  # globally install grunt task runner
$ npm install -g bower      # globally install Bower package manager
$ npm install               # install local npm build / test dependencies
$ bower install             # install local JavaScript dependencies
$ grunt install             # install Selenium server for end-to-end tests
$ grunt watch               # watch for source file changes

grunt watch will watch for changes in the /src/ directory and lint, concatenate, and minify the source files when a change occurs. The output files - angularfire.js and angularfire.min.js - are written to the /dist/ directory. grunt watch will also re-run the unit tests every time you update any source files.

You can run the entire test suite via the command line using grunt test. To only run the unit tests, run grunt test:unit. To only run the end-to-end Protractor tests, run grunt test:e2e.

In addition to the automated test suite, there is an additional manual test suite that ensures that the $firebaseSimpleLogin service is working properly with the authentication providers. These tests can be run with grunt test:manual. Note that you must click "Close this window", login to Twitter, etc. when prompted in order for these tests to complete successfully.

Packages

No packages published