Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

cnyks

Package Overview
Dependencies
Maintainers
2
Versions
110
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

cnyks

Command line introspection tool for nodejs (interactive runner)

  • 3.2.1
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
2
Created
Source

cnyks is a CLI runner for nodejs modules.

Aka : cnyks any ES6 class and :boom:boom:sparkles: you got the greatest command line runner ever (no fingerprint at all)

Build Status Coverage Status NPM version License Code style

demo workflow

Motivation

cnyks will analyze your class/instance prototype and reflect the API it exposes, hence, any module can be handled by cnyks. There is no API to abide, compose your class the way you like.

Example

"use strict";

var sleep = require('nyks/async/sleep');

module.exports  = class {
  test(name) {
    console.log(name);
  }

  async hello(name) {
    await sleep(1000);
    return `Hello ${name}`;
  }
  static test(){
    console.log("Got test");
  }
}

Now, just cnyks' it !

cnyks foo.js

Installation/Usage

CLI

npm install -g cnyks
cnyks path/to/your/module.js
# enjoy !

CLI unattended flags / arguments

  • --ir:// is a "namespace" for all cnyks dedicated arguments
  • --ir://run=method_name run "method_name" on your module, then quit
  • --ir://start=method_name run "method_name" on your module, then start the interactive loop
  • --ir://json (to be used with "run") silence ir helpers, format output as JSON
  • --ir://run=hello --name=bar run method "hello" with argument name set to 'bar' (i.e. function hello(name) { })
  • --ir://run=hello --name::json='[1,2,3]' run method "hello" with argument name set to [1, 2, 3] (as a javascript array).

Self running, standalone cnyks bundle (via browserify)

Cnyks expose a cnyksify plugin for browserify.

browserify --node entry.js --plugin cnyks/ify  > bundle.js
  • node bundle.js => start runner

Standalone bootstrap

Just add this 2 lines footer to your module/class so it can be use by clyks directly

  //at the end of your module
module.exports = SomeClass;

if(module.parent === null) //ensure module is called directly, i.e. not required
  require('cnyks')(SomeClass); //start runner

Now just node someapp.js to start cnyks runner.

Legacy ES5 async support

Cnyks also allows you to declare async function through generators (internaly using co ).

Bundled utilities

  • require('cnyks/ify') : a browserify plugin
  • require('cnyks/prompt/bool')(prompt, default) : prompt (using [read]) for a boolean

TODO

  • Get rich or die tryin'

Buzzword / shoutbox / SEO LOVE

cli, reflection API, commander, cnyks, interactive runner, async/await, co, promise, Promises, yield, "Let's have a beer & talk in Paris"

Keywords

FAQs

Package last updated on 15 Jun 2024

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