Waiting for latch...
webpipe is server and a set of tools which bridge the Unix shell and the web. You create files in a terminal (using R, bash, etc.), and they will be rendered immediately in your browser.
It gets rid of the Alt-Tab F5
dance when creating content.
Put wp
in your PATH
. For example:
$ ln -s /path/to/webpipe/wp.sh ~/bin/wp
Do one-time initialization of your ~/webpipe
dir:
$ wp init
Create a convenience symlink for the R library:
$ ln -s /path/to/webpipe/webpipe.R ~/webpipe
The initial motivation for webpipe was to show R plots in a browser, avoiding the remote X11 protocol in favor of HTTP.
First start the renderer and server:
$ wp run
This creates a new "session", e.g. 2014-04-03
. Files can be put in the
~/webpipe/input
directory, and then they are rendered to HTML in the
~/webpipe/s/2014-02-17
directory.
Visit http://localhost:8989/ in your browser.
Then in R, make a plot using the the wrapper functions in webpipe.R
:
$ R
...
> source('~/webpipe/webpipe.R')
>
> web.plot(1:10)
> web.hist(rnorm(10))
Instead of opening up an desktop window, the plot will be pushed to your browser via AJAX.
ggplot works easily as well:
> library(ggplot2)
> p = ggplot(mtcars, aes(wt, mpg)) + geom_point()
> web.plot(p)
You can also display files from the shell:
$ wp show mydata.csv
With no file, show
reads from stdin.
$ ls -l | wp show
Use wp help
to see more actions.
The renderer process is called xrender
, which shells out to various plugins.
It understands .png
files, plain text, HTML, and CSV files. (TODO: document
the full list)
You can publish entries to "shared hosting", so you don't have to keep your server up.
TODO ...
TODO ...
Contact __EMAIL_ADDRESS__
.