Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Ruby wrapper for Firebase
Ruby
branch: master

Merge pull request #40 from 67ideas/master

fix to server timestamp
latest commit 0fc46f539b
@vincentwoo vincentwoo authored

README.md

firebase

Ruby wrapper for the Firebase REST API.

Changes are sent to all subscribed clients automatically, so you can update your clients in realtime from the backend.

See a video demo of what's possible.

Installation

gem install firebase

Usage

base_uri = 'https://<your-firebase>.firebaseio.com/'

firebase = Firebase::Client.new(base_uri)

response = firebase.push("todos", { :name => 'Pick the milk', :priority => 1 })
response.success? # => true
response.code # => 200
response.body # => { 'name' => "-INOQPH-aV_psbk3ZXEX" }
response.raw_body # => '{"name":"-INOQPH-aV_psbk3ZXEX"}'

If you have a read-only namespace, set your secret key as follows:

firebase = Firebase::Client.new(base_uri, secret_key)

response = firebase.push("todos", { :name => 'Pick the milk', :priority => 1 })

You can now pass custom query options to firebase:

response = firebase.push("todos", :limit => 1)

To populate a value with a Firebase server timestamp, you can set Firebase::ServerValue::TIMESTAMP as a normal value. This is analogous to passing Firebase.ServerValue.TIMESTAMP in the official JavaScript client.

response = firebase.push("todos", {
  :name => 'Pick the milk',
  :created => Firebase::ServerValue::TIMESTAMP
})

So far, supported methods are:

set(path, data, query_options)
get(path, query_options)
push(path, data, query_options)
delete(path, query_options)
update(path, data, query_options)

More information about Firebase and the Firebase API is available at the official website.

Copyright

Copyright (c) 2013 Oscar Del Ben. See LICENSE.txt for further details.

Something went wrong with that request. Please try again.