This is lib_wam. It's not fully baked.
lib_wam is a “Web Application Messaging” library that includes two parts:
A base layer that adds multiple reply and bidirectional reply conventions to existing JSON message passing options.
An application layer that adds filesystem-like functionality on top of that.
lib_wam.js- Namespace and common utilities.
lib_wam_direct_transport.js- Transport for apps that want to talk to themselves. The terminal window uses this to run
washand, wash uses it to run
readline, for example.
lib_wam_chrome_port_transport.js- Transport to connect to other chrome apps and extensions.
lib_wam_channel.js- Communication layer over the transport that provides reply tracking and stuff.
lib_wam_message.js- Message implementation.
lib_wam_fs.js- Namespace, error definitions, etc.
lib_wam_fs_entry.js- Base class for things that can appear in a filesystem.
lib_wam_fs_directory.js- A container for other lib.wa.fs.Entry objects.
lib_wam_fs_executable.js- An entry which can be executed.
lib_wam_fs_remote.js- An entry whose actual value lives on the other side of a