Firebase provides a few open data sets, one of which is the Transit data set. This data set includes real-time information about municipal transit systems – for example the San Francisco Municipal transit system. I wanted to create a simple application that would watch the SF Muni system and display the location of buses in […]


The Firebase REST API has many limitations – one of which is that it has no support for transactions. But what if I’m (exclusively) using the REST API and want to make sure that if two clients try to change the same object concurrently that only one will win? Well – a simple way is […]


FirebaseSharp 2 has gone into an early alpha. This post is using version 2.0.1-alpha – and the latest package is always available here. Just remember that because it is an alpha release you have to instruct nuget to get pre-release packages. Here are some of the latest changes… Strongly Type Snapshot Values Using the Firebase […]

Since we can order by priority, it sure would be nice to be able to set priorities with FirebaseSharp. And now we can! var root = app.Child("/");   // now update the priorites root.Child("aaa").SetWithPriority("{}", 3); root.Child("bbb").SetWithPriority("{}", 2); root.Child("ccc").SetWithPriority("{}", 1) In this example we end up with a tree that looks like this: { ‘aaa': { […]


Data Snapshots When a On or Once callback is fired the callback is provided a snapshot of the data returned from the query. The Firebase docs for data snapshots show the various properties and functions. You can get the current key, create a new query ref from the current location, get the snapshot value (i.e.,JSON), […]

Using Firebase you can provide a priority for a data item. The JSON would look like this: { ‘item1′: { ‘data': ‘foo’, ‘.priority': 1 }, ‘item2′: { ‘data': ‘bar’, ‘.priority': 3 }, ‘item3′: { ‘data': ‘baz’, ‘.priority': 2 }, } Notice how the priority is embedded in the JSON. If you are using the JavaScript […]


Today we’ll look at the StartAt method on the new FirebaseSharp 2.0 library. The startAt function provides a mechanism to limit sorted query results to values which meet or exceed the provided value. For example – here we’re using the Javascript API to get all the dinosaurs that are at least 3 meters tall: var […]