creebet
TypeScript icon, indicating that this package has built-in type declarations

0.6.4 • Public • Published

creebet is a simple & modern imaginary client for nodejs.

It does not support everything that imaginary offers, but should be enough for most use cases.

Usage

const { ImaginaryClient } = require('creebet');
const client = new ImaginaryClient({ url: 'http://localhost:9000' });

// use the resize op with a given url
const stream = await client.get('resize', {
  width: 120, // resize to 120x?
  url: 'https://upload.wikimedia.org/wikipedia/commons/5/53/Congo_painting_2.jpg',
  type: 'png', // convert to png
});

// save the result somehow
stream.pipe(fs.createWriteStream('./rezized.png'));

Usage with cloud run

const { ImaginaryClient } = require('creebet');
const { GoogleAuth } = require('google-auth-library');

const BASE_URL = 'https://imaginary-api-foo-bar.a.run.app';
const idTokenClient = new GoogleAuth().getIdTokenClient(BASE_URL);

// setup client
const client = new ImaginaryClient({
  url: BASE_URL,
  async headers() {
    const readyClient = await idTokenClient;
    return readyClient.getRequestHeaders(BASE_URL);
  },
});

// test the client
client.preheat().then(console.log);

Development

Please open an issue if you would like to contribute. The current project architecture does not allow for easy contributing …

/creebet/

    Package Sidebar

    Install

    npm i creebet

    Weekly Downloads

    1

    Version

    0.6.4

    License

    MIT

    Unpacked Size

    30.3 kB

    Total Files

    25

    Last publish

    Collaborators

    • fiws