Neutrinos Peludos Magnéticos


    0.5.0 • Public • Published


    A collection of tools that are needed every now and then. Some tools are just (modern async) wrappers around existing tools.

    Install via npm Current Version

    npm install sh.misc-tools

    Included Tools

    This package includes tools as I needed them, so it is in no way complete. Currently, this collection includes the following:

    • Extensions for package sh.orchestration-tools (npm install sh.orchestration-tools):
      • Calendar, CalendarError, CalendarEventSimple, CalendarScheduler, symbolCalendarEvent: These can be used with the scheduler in sh.orchestration-tools for scheduling events that are sourced from an iCal-calendar (from file or, e.g, online, like google calendar or nextcloud).
    • FTP-Tools (note the returned Client is the instance of the package ftp):
      • async connectFtp(options) => Promise.<Client>
      • async mkdirFtp(client, directory, recursive = true) => Promise.<Client>
      • async uploadFtpFile(client, localFile, remoteFile, mkdirP = true) => Promise.<Client>
      • async connectFtpUploadClose(opts, localFile, remoteFile, mkdirP = true) => Promise.<void> Connect to server, upload the file, disconnect
      • async listFtpDir(client, dir, useComp) => Promise.<Array.<Client.ListingElement>>
      • async getFtpFile(client, file, useComp) => Promise.<NodeJS.ReadableStream>
      • async cwdFtp(client, wd) => Promise.<void> Change working dir
      • async pwdFtp() => Promise.<string> Get current working dir
    • Network-Tools:
      • async pingPort(host, port, timeout = 500, family = 4) => Promise.<void> Attempts to open a Socket to host:port and resolves if it worked within timeout; rejects, otherwise.
      • async tryPingPort(host, port, timeout = 500, family = 4) => Promise.<boolean> Like 'pingPort()', but always resolves with a boolean.
    • Miscellaneous-Tools:
      • async timeout(milliSeconds) => Promise.<void>
      • async attempt.<T>(asyncFn, maxNumTries = 3, timeoutMsecs = -1) => Promise.<T> Attempts another async function for the given amount of times with an optional timeout in between
    • FS-Tools:
      • async probeDir(dir) => Promise.<Array.<string>> Checks if a directory is readable and returns the contained files/folders
      • async moveFileByCopy(src, dst) => Promise.<void>
      • async renameFile(src, dst) => Promise.<void>
      • async unlinkFile(src) => Promise.<void>


    npm i sh.misc-tools

    DownloadsWeekly Downloads






    Unpacked Size

    57.5 kB

    Total Files


    Last publish


    • shoenel