contentpull

    3.0.1 • Public • Published

    Contentpull

    A contentful.js wrapper that adds simple functions to handle queries and optionally parses data before resolving promises.

    Status

    npm Travis codecov Dependency Status devDependency Status js-standard-style npm pull requests

    Reference

    See contentful.js for more information as that package represents the base of this one.

    Installation

    Include the package locally in your repository.

    npm install contentpull --save

    Basic Usage

    To see an interactive guide, visit our tonic notebook.

    The puller registers a client for communicating with the server. First create an instance of the puller with the following:

    // The class
    var Contentpull = require('contentpull');
     
    // This is your space id (provided by contentful)
    var spaceid = 'space-id';
     
    // This is the access token (provided by contentful)
    var accessToken = 'abcdefg1234567';
     
    // If preview is true, contentful will run in preview mode
    var isPreview = false;
     
    // built-in parsers exist, but you can override any of them
    var parsers = {
        // choose the content type parser you want to override
        Array: function (arr, parser) {
            // edit the passed object directy
            delete arr.sys;
            arr.items.map(item => parser(item));
        }
    };
     
    // The instance of the puller
    var puller = new Contentpull(spaceid, accessToken, {
        preview: isPreview,
        parsers: parsers
    });

    Writing plugins

    You can create your own plugins using the static .use function.

    All of the following examples are valid for writing extensions to be used in Contentpull

     
    // the augmentation
    function getEntriesByContentType() {
        this.getEntriesByType.apply(this, arguments);
    }
     
    /*
     
    Each example allows the following to work:
     
    puller.getEntriesByContentType('books');
     
    */
     
    /**
     * {String} name - The function name.
     * {function} fn - The function reference.
     */
    Contentpull.use('getEntriesByContentType', getEntriesByContentType);
     
    /**
     * {function} fn - The function reference (must be named).
     */
    Contentpull.use(getEntriesByContentType)
     
    /**
     * {Object} args - The arguments.
     * {String} args.name - The function name.
     * {function} args.fn - The function reference.
     */
    Contentpull.use({
        name: 'getEntriesByContentType',
        fn: getEntriesByContentType
    });

    Please take a look at our example contentpull-backup.

    Additional Help

    If you are viewing this README online, refer to our wiki.

    If you have cloned or downloaded this repo, please refer to the generated ESDOC articles (npm run doc).

    LICENSE

    MIT

    Install

    npm i contentpull

    DownloadsWeekly Downloads

    2

    Version

    3.0.1

    License

    MIT

    Unpacked Size

    20.4 kB

    Total Files

    6

    Last publish

    Collaborators

    • mrsteele