Over a million developers have joined DZone.

Announcing FogJS for Windows Azure with Node.js

· Cloud Zone

Learn about the benefits and drawbacks of microservices with best practices for your own architecture, brought to you in partnership with Iron.io.

About a year and a half ago I announced a library named Fog (for F#) that had the goal of making it very easy to use F# to work with the Windows Azure API for .NET. Today, I'm proud to announce the release of FogJS, which has a similar goal for JavaScript/Node.js development.

FogJS:
FogJS currently supports 3 of the more popular Azure services: Blob Storage, Table Storage, and Service Bus. One of the most broad features in FogJS is that of support for promises. In fact, almost every function provided by the Azure SDK for Node.js has been replicated in Fog with the results returned as a promise (with the help of Q.js).

The second big feature is related to making it as easy as possible to interact with Azure. This is primarily accomplished with "simplified functions" that follow a convention over configuration approach.

Example: 

Here's a quick example of one option for how to use Blob Storage with FogJS:
var fog = require("fogjs"); 
var fogBlob = fog.blobStorage;

var containerName = "testcontainer";
var blobName = "testblob";

fogBlob.createBlockBlobFromText({
    "containerName": containerName, 
    "blobName" : blobName, 
    "blobText": "My super awesome text to upload"
}).then(function() {
    return fogBlob.getBlobToText({
        "containerName": containerName, 
        "blobName" : blobName
    });
}).then(function(response) {
    console.log("The blob contains the text: " + response.text);
    return fogBlob.deleteBlob({
        "containerName": containerName, 
        "blobName" : blobName
    });                    
}).then(function(response) {
    console.log("done");
});
You can find examples for Table Storage and Service Bus interaction on the main FogJS site: http://fogjs.azurewebsites.net/.

As usual, the code and tests can be found on my GitHub.


The Cloud Zone is brought to you in partnership with Iron.io.  Learn about best practices and common pitfalls for working with Iron.io. Avoid the dead ends, and take the enlightened path.

Topics:

Published at DZone with permission of Daniel Mohl , DZone MVB .

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}