• PRODUCT

    PRODUCT

  • PRICING
    PRICING

  • HELP
    HELP

  • BLOG
    BLOG

  • APPSTORE
    APPSTORE

  • COMPANY
    COMPANY

  • LEGAL
    LEGAL

  • LOGIN
    LOGIN

  • Build and deploy a content distribution app in less than five minutes: Part II


  • The Izyware Cloud App Service makes it easy to build content distribution apps from your raw content regardless of where the content might be stored. In the 2nd part of the series we will discuss strategies for making big data sets manageable and discoverable.


  • Adding Discoverability

    In the first part we discussed how the data can be turned into content and be published such that it can be easily browsed. Now we discusse how to add discoverability to big data sets.

    Discovery URI links

    Discovery URI links reveal resources that would features and actions that may be done in the current flow. These could be anything from going to a third party app, expanding upon an existing large dataset, etc.

    Each view in the app can publish these by either:

    • calcViewLinks
    • calcContentsLinks

    framePath

    framePath will allow virtualizing the paths: it will be used by the framework to build fullpaths that can be serizlied into hrefs or other RDF representations:

    href = mo.params.fullPath + '/' + link.framePath;

    calcViewLinks

    This will generate only a single set of URI links per view. It is useful for creating data browser buttons that manipulate offset and limit and links to other app URIs.

    // 1 Per View

    modtask.calcViewLinks = function(contentItems, cb) {

    var linkString, querystring;

    if (!contentItems || contentItems.length == 0) {

    querystring = 0;

    linkString = 'Go Back';

    } else {

    querystring = modtask.calcOffset() 1 + modtask.limit 1;

    linkString = 'Next >>';

    }

    return cb([{

    name: linkString,

    framePath: 'browse/' + querystring

    }]);

    }

    calcContentsLinks

    This will generate one set of URI links per pulse item. It is useful for exposing URIs that are content specific such as drilling down into the content or content specific actions.

    // 1 Per Content Item (gets repeated n times for n content entries)

    modtask.calcContentsLinks = function(contentItems, cb) {

    return cb(contentItems.map(contentItem => {

    return {

    name: 'goto article',

    framePath: 'article/' + contentItem.address

    };

    }));

    }


  • Izyware Help Articles
    Izyware Help Articles