New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

boxcutter

Package Overview
Dependencies
Maintainers
1
Versions
9
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

boxcutter

A utility knife for interacting with package.json (or other json files)

  • 1.2.0
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
3
decreased by-78.57%
Maintainers
1
Weekly downloads
 
Created
Source

Boxcutter

A utility knife for interacting with package.json (or other json files)

Installation

npm install boxcutter --save

Global

sudo npm install boxcutter -g

Usage

CLI

Walks up your directory tree looking for a package.json file. If it finds one, it will load it and allow you to interact with it:

Usage: boxcutter <command>
  available commands:
    get               : get a value from the package.json
    set               : set a value in the package.json
    help <command>    : get help for the specified command
  options:
    --indent <num>    : will indent json output the specified number of spaces
    --file <filename> : will use specified json as input / output file

Example:

> boxcutter get version
1.0.0
> boxcutter set version 1.0.1
> boxcutter get version
1.0.1
>

You may optionally use the --file flag to specify a json file other than package.json:

> boxcutter --file apidoc.json get name
Boxcutter
> boxcutter --file apidoc.json set name "Boxcutter API Documentation"
> boxcutter --file apidoc.json get name
Boxcutter API Documentation

API

const Boxcutter = require( 'boxcutter' );
const boxcutter = Object.assign( {}, Boxcutter.Boxcutter );

boxcutter.load( './package.json' );
console.log( boxcutter.get( 'version' ) );

load( filename )

boxcutter.load( './package.json' );

Loads the given package.json. Can take a relative or absolute path.

get( key )

const value = boxcutter.get( 'version' );

Gets the given key. Uses Delver to retrieve the value, so you can use dot and bracket syntax:

const testScript = boxcutter.get( 'scripts.test' );
const firstKeyword = boxcutter.get( 'keywords[0]' );

set( key, value )

boxcutter.set( 'version', '1.0.1' );

Sets the given key to the value specified. Uses Delver to set the value, so you can use dot and bracket notation:

boxcutter.set( 'scripts.test', 'tape test/*.js' );
boxcutter.set( 'keywords[0]', 'boxcutter' );

save( filename[, options[, callback]] )

boxcutter.save( './package.json', function( error ) {
    if ( error ) {
        console.error( error );
    }
} );

Saves the current settings to an output file. You can pass options to control the output, eg:

boxcutter.save( './package.json', {
    json: {
        indent: 4
    }
}, function( error ) {
    if ( error ) {
        console.error( error );
    }
} );

If you call this method without a callback, it will execute synchronously and potentially throws, eg:

try {
    boxcutter.save( './package.json' );
}
catch( ex ) {
    console.error( ex );
}

or, with options but no callback:

try {
    boxcutter.save( './package.json', {
        json: {
            indent: 4
        }
    } );
}
catch( ex ) {
    console.error( ex );
}

Keywords

FAQs

Package last updated on 15 Mar 2016

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc