Nirvana is a project mainly written in JAVASCRIPT and RUBY, based on the MIT license.
A ruby web shell that is very ape and very nice
== Description A ruby web shell that has autocompletion and readline behavior. It uses websockets, repl.js, readline.js and ripl for the shell engine.
== Install Install the gem with:
sudo gem install nirvana
== Usage
Your browser must have html5 websockets support.
To use, start a websocket server and open nirvana in a tab
# On a mac
$ nirvana
# Everywhere else
$ nirvana | command_to_browser_path
If you close the tab, the path to nirvana's html page is (for reopening)
$ echo $(dirname $(gem which nirvana))/nirvana/public/index.html
To see what options nirvana takes (mostly options like ripl):
$ nirvana -h
Once you're in the nirvana web shell, autocompletion should work better than irb's (argument autocompletion):
>> Bo[TAB]
>> Bond
>> Bond.const[TAB]
Bond.const_defined?
Bond.const_get
Bond.const_missing
Bond.const_set
Bond.constants
>> Bond.const_g[TAB]
>> Bond.const_get :Ag[TAB]
>> Bond.const_get :Agent
Also notice that a subset of readline's functionality is available. Try C-l, C-r or C-p and they should do what readline normally does. For more keybindings, see {readline.js}[http://github.com/cldwalker/readline.js].
== Customize Since nirvana uses ripl under the hood, most shell behavior is customizable with ripl plugins which get loaded from ~/.riplrc. See {ripl}[http://github.com/cldwalker/ripl] for more.
== Links
== Bugs/Issues Please report them {on github}[http://github.com/cldwalker/nirvana/issues]. For javascript issues, report them on {readline.js}[http://github.com/cldwalker/readline.js/issues] or {repl.js}[http://github.com/cldwalker/repl.js/issues] as appropriate.
== Credits
== License nirvana is MIT licensed. nirvana comes bundled with other libraries which have the following licenses: jquery (GPL2 and MIT), jquery.hotkeys plugin (no license), repl.js jquery plugin (MIT) and readline.js jquery plugin (MIT).
== Todo