npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

memdisk

v1.2.1

Published

A library and a CLI to create RAM disk on macOS and Linux.

Downloads

228

Readme

memdisk

A library and a CLI to create RAM disk on macOS and Linux.

Usage

As a library

import { create, destroy } from 'memdisk';

const dir = create.sync(
  'memdisk', // The name of the RAM disk
  1024 * 1024 * 1024, // The size in bytes
  // optional options
  {
    // Supress the output. Default to true
    quiet: true,
    // Throw an error if the platform is not supported.
    // When set to false, a temporary folder (which may or may not be a RAM disk) will be created.
    // Default to true
    throwOnNotSupportedPlatform: true,
    // Use HFS+ instead of APFS on macOS. Default to false
    darwinUseHFSPlus: false,
  }
); // Returns the path to the mounted RAM disk

destroy.sync(
  dir, // The absolute path to the mounted RAM disk
  // optional options
  {
    // Supress the output. Default to true
    quiet: true,
    // Throw an error if the platform is not supported.
    // When set to false, a delete operation will be performed on the path.
    // Default to true
    throwOnNotSupportedPlatform: true,
    // Force unmount the RAM disk. Default to true.
    force: true
  }
);

// Promise based API is also available
const dir = await create.async('memdisk', 1024 * 1024 * 1024);
destroy.async(dir);

// Node.js-style callback (errback) API is also available
create.errback('memdisk', 1024 * 1024 * 1024, (err, dir) => {
  if (err) {
    console.error(err);
    return;
  }
  console.log(dir);
  destroy.errback(dir, (err) => {
    if (err) {
      console.error(err);
      return;
    }
    console.log('Destroyed');
  });
});

As a CLI

$ memdisk --help

Usage: memdisk [options] [command]

CLI to create and destroy RAM disks

Options:
  -V, --version                      output the version number
  --silent, --quiet                  Disable messages (default: false)
  --throw-on-not-supported-platform  Throw an error if the current platform doesn't support RAM disks (default: true)
  -h, --help                         display help for command

Commands:
  create <size> [name]               Create a RAM disk with size and disk name
  destroy [nameOrPath]               Destroy a RAM disk with name or path
  help [command]                     display help for command
$ memdisk create --help

Usage: memdisk create [options] <size> [name]

Create a RAM disk with size and disk name

Arguments:
  size        Size of the RAM disk, accepts number or string with unit (e.g. 16mb, 32mib, 128m, 1G, 4g, 8gib, etc.)
  name        Name of the RAM disk, default is "ramdisk" (default: "ramdisk")

Options:
  --darwin-use-hfs-plus  Use HFS+ instead of APFS on macOS (default: false)
  -h, --help  display help for command
$ memdisk destroy --help

Usage: memdisk destroy [options] [nameOrPath]

Destroy a RAM disk with name or path

Arguments:
  nameOrPath  Name or path of the RAM disk (if argument is not an absolute path, it will be treated as a name), default is "ramdisk" (default: "ramdisk")

Options:
  --force     Force unmouting and removing the RAM disk (default: false)
  -h, --help  display help for command

memdisk © Sukka, Released under the MIT License. Authored and maintained by Sukka with help from contributors (list).

Personal Website · Blog · GitHub @SukkaW · Telegram Channel @SukkaChannel · Mastodon @[email protected] · Twitter @isukkaw · Keybase @sukka