optidash

    1.0.1 • Public • Published

    Optidash

    Optidash is a modern, AI-powered image optimization and processing API.
    We will drastically speed-up your websites and save you money on bandwidth and storage.


    The official Node integration for the Optidash API.


    Documentation

    See the Optidash API docs.

    Installation

    $ npm install optidash --save

    Quick examples

    Optidash API enables you to provide your images for optimization in two ways - by uploading them directly to the API (Image Upload) or by providing a publicly available image URL (Image Fetch).

    You may also choose your preferred response method on a per-request basis. By default, the Optidash API will return a JSON response with rich metadata pertaining to input and output images. Alternatively, you can use binary responses. When enabled, the API will respond with a full binary representation of the resulting (output) image. This Node module exposes two convenience methods for interacting with binary responses: .toFile() and .toBuffer().

    Image upload

    Here is a quick example of uploading a local file for optimization and processing. It calls .toJSON() at a final step and instructs the API to return a JSON response.

    const Optidash = require("optidash");
     
    // Pass your Optidash API Key to the constructor
    const opti = new Optidash("your-api-key");
     
    // Upload an image from disk, resize it to 100 x 75,
    // automatically enhance, and adjust sharpness parameter
    opti.upload("path/to/input.jpg")
        .optimize({
            compression: "medium"
        })
        .resize({
            width: 100,
            height: 75
        })
        .auto({
            enhance: true
        })
        .adjust({
            unsharp: 10
        })
        .toJSON((err, meta) => {
            if (err) {
                return console.log(err);
            }
     
            // You'll find the full JSON metadata within the `meta` object
            if (meta.success) {
                console.log(meta.output.url);
            } else {
                console.log(meta.message);
            }
        });

    Image fetch

    If you already have your source visuals publicly available online, we recommend using Image Fetch by default. That way you only have to send a JSON payload containing image URL and processing steps. This method is also much faster than uploading a full binary representation of the image.

    const Optidash = require("optidash");
     
    // Pass your Optidash API Key to the constructor
    const opti = new Optidash("your-api-key");
     
    // Provide a publicly available image URL with `.fetch()` method,
    // apply Gaussian blur using highly optimized PNG as the output format.
    // We'll also use `.toFile()` method and stream the output image to disk
    opti.fetch("https://www.website.com/image.jpg")
        .optimize({
            compression: "medium"
        })
        .filter({
            blur: {
                mode: "gaussian",
                value: 10
            }
        })
        .output({
            format: "png"
        })
        .toFile("path/to/output.png", (err, meta) => {
            if (err) {
                return console.log(err);
            }
     
            // You'll find the full JSON metadata within the `meta` object
            if (meta.success) {
                console.log(meta.output.url);
            } else {
                console.log(meta.message);
            }
        });

    License

    This software is distributed under the MIT License. See the LICENSE file for more information.

    Install

    npm i optidash

    Homepage

    optidash.ai

    DownloadsWeekly Downloads

    220

    Version

    1.0.1

    License

    MIT

    Unpacked Size

    33.8 kB

    Total Files

    8

    Last publish

    Collaborators

    • optidash