node package manager


nexus - remote program installation and control (work in progress/proof of concept)

    /    ___  ___  _ _  _ _  ___    \
    |   |   || -_||_'_|| | ||_ -|   |
    |   |_|_||___||_,_||___||___|   |
    \_____________________________  / ____       ___
                                  \| / .  \  .-´/   \`-.
                                     \____ \/   \___/   \__
                                           /../..\ /..\..\

build status

  • nexus provides a cli and a server with dnode-interface to install, uninstall, start, stop and observe local and remote programs.
  • right now only git-repos can be installed.
  • running programs are monitored with mon.
  • information about running programms is stored in a dirty-database.
  • all the config, logs and programs live in ~/.nexus by default.
  • nexus is still super-alpha (and may change a lot). you may want to checkout fleet which does similiar things differently.


  • install node
  • npm install nexus -g


install a program locally in ~/.nexus/apps

nexus install

we need to do npm install since nexus does not do anything but cloning the repo. you can put a nexus.json into the root of your repo to tell nexus what you want it to do upon installation (see nexus help install):

nexus exec express -- npm install

install another version of the program, the name is now express_2 to avoid name-collision with the other program. now it will clone from a locally mirrored cache of the repo:

nexus install
nexus exec express_1 -- npm install

start the resource-example with version 3.0.0rc3:

nexus start express -- node examples/resource/app

start another process with version 2.5.11:

nexus start express_1 -- node -e "require('./examples/resource/app').listen(3001)"

show all locally running processes:

nexus ps

uninstall programs:

nexus rm express express_1

start a nexus server:

nexus server start -p 3840

remotly install a program and start a process, stopall and uninstall:

nexus -h -p 3840 install foo
nexus -h -p 3840 start foo -- node examples/blog/app
nexus -h -p 3840 ps
nexus -h -p 3840 stopall
nexus -h -p 3840 rm foo


nexus [-r <remote>] [-c <path to configFile>] [<command> [<options>]]


  • [version] - print version-number
  • [config] - print config
  • [ls] - list installed packages
  • [install] - install packages
  • [uninstall] - uninstall packages
  • [ps] - list of current running (and crashed) programs
  • [start] - start a program
  • [restart] - restart a running (or max crashed) program
  • [restartall] - restart all running programs
  • [reboot] - reboot ghost-programs
  • [stop] - stop a running program
  • [stopall] - stop all running programs
  • [exec] - execute a command
  • [log] - access log-files
  • [server] - control nexus-servers
  • [help] - try nexus help <command> for more info


var n = require('nexus')()
n.install(opts, cb)
n.uninstall(opts, cb), cb)
n.start(opts, cb)
n.restart(opts, cb)
n.stop(id, cb)
n.exec(opts, cb)
n.log(opts, cb)
n.server(opts, cb)
n.connect(opts, cb)