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

vantage-repl-sandboxed

v1.0.1

Published

Advanced REPL extension for vantage.js

Downloads

5

Readme

vantage-repl-sandboxed

Advanced REPL extension for vantage.js

  • regenerates the context each run / REPL start
  • provides a sandbox with newly created context basics (see initCtx, allows these functions to be overwritten within sandbox)
  • only options.context provided objects are really linked into the app
  • sports developer console inspection (just type an object, function name, whatever an press enter)
  • sports developer console syntax error output with position cursor
  • validates and makes the position of the faulty javascript statement
  • console.log/info/warn/error are also piped to a remote connection and do net mess up the prompt
  • functions get highlighted if all optional dependencies are installed
  • remote vantage connections do get the results there (v1.0.1)
  • KNOWN: only single line statements are computed.

Bugs:

  • '..' and '..-' execute on the main server instance. Ventage.exec does not execute in the remote shell, and there is no this.exec (nothing i can do about)
Installation
npm install vantage-repl-sandboxed
npm install vantage
Programmatic use
// index.js
var Vantage = require('vantage')
  , repl = require('vantage-repl-sandboxed')
  ;

var vantage = Vantage();

vantage
  .delimiter('node~$')
  .use(repl, {context:{koa: app, mongo: mongo, socketio: socket, vantage: vantage}})
  .show();
$ node app.js
node~$ 
node~$ js
 (Banner is shown, presented below ..)
node~$ js>
node~$ js> 6 * 6
32
node~$ js> vantage
{ _version: '',
  commands: [Object],
  _queue: [Object],
  _command: undefined,
  ui: [Object],
  _delimiter: 'node~$',
  _banner: ' ... ',
  client: [Object],
  server: [Object],
  _hooked: false,
  util: [Object],
  _authFn: [Object],
  session: [Object],
  executables: true,
  firewall: [Object],
  _histCache: undefined,
  _histCtrCache: NaN,
  _hist: [Object],
  _histCtr: 0 }
node~$ js> 
node~$ js> console.log('test')
test
node~$ js> ..
node~$
What it does

it adds a version group command, that all modules may use to add their version

node~$ version

  Commands:

    version js          JS REPL version 1.0.1

You may open the help to see its details, and possible commands

node~$ version js
Author
 * Nabil Redmann (BananaAcid)
 * bananaacid.de
INFO
 * regenerates the context each run REPL start
 * provides a sandbox with newly created context basics (see initCtx, allows these functions to be overwritten within sandbox)
 * only options.context provided objects are really linked into the app
 * sports developer console inspection (just type an object an press enter)
 * sports developer console syntax error output with position cursor
 * console.log/info/warn/error are also piped to a remote connection and do net mess up the prompt
 * KNOWN: only single line statements are computed.

Commands:
 - version js
 - js

The banner shown above, when entering the REPL

node~$ js
 In REPL you can execute JS statements.
 * NodeJS module "Util" is loaded.
 * Set a new value on utilInspectDepth to increase inspection depth.
 *  -> utilInspectDepth=2;
 * You can use generic return functions to output any passed arguments (cbInfo/cbError, fnInfo/fnError)
 *  -> doSomething.success(cbInfo('success with:')).fail(cbError('failed with:'));
 *  -> doSomething.success(fnInfo).fail(fnError);
 *  -> mongo.db.users.find({}).exec(fnInfo);
 * Available objects:
 *  -> cbInfo:function(caption), cbError:function(caption), fnInfo:function(), fnError:function(), console:object,utilInspectDepth:number, koa:object, mongo:object, socketio:object, vantage:object
 **|Use "exit" or ".." to close the REPL. Use "..-" to exit completely.