Fast Interactive Framework for Web Scripting Using R

Infrastrcture for creating rich, dynamic web content using R scripts while maintaining very fast response time.


1.1-1 (2015-07-27) o clear the output buffer before serving run() scripts

o	using out() on WebPlots will now use dataURI instead
of temporary files

o	import Cairo to avoid namespace clash with other packages
that define Cairo to be something entirely different.

1.1-0 (2012-12-15) o The interface to the R process has been enhanced to support request body and other methods including POST. A new global variable `request' is a list that is populated with various entries pertinent to the request:

    request$uri - URI of the request (used to be request.URI)
    request$method - method type (as string) such as "GET"
request$c.type - content type of the request body
request$c.length - length of the request body (-1 if
                       there is no body)
request$body - raw vector containing the body of the request
    request$client.ip - IP address of the client (as string)
request$raw.cookies - raw cookie string
request$ - path part beyond the script name

All strings are guaranteed to be "" if not set.
request$body will be NULL if there is no body.

o	The interface to the R process now sets a global variable
`webapi` which is a real number that defines the version of
the interface used to pass information. It is now set to 1.1
and guarantees the information described above. This number
will be increased in case new features are added to the API
between the R process and the web server.

o	FastRWeb now provides an internal `.run()' function which does
the necessary processing of a request, so additional
FastRWeb-compliant front-ends are easy to implement by simply
creating the request structure and calling the `.run()'

o	FastRWeb contains an experimental .http.request()
implementation which can be used with Rserve's HTTP server,
removing all middle layers - no webserver, CGI or PHP is needed.
Simply evaluate	`.http.request <- FastRWeb:::.http.request`
during Rserve startup.

o	FastRWeb now attempts to parse known content types - not just
the query string but also "application/x-www-form-urlencoded"
and multi-part encodings. If the key name is used, query
string has higher precedence. It is still possible to separate
the various types by hand from request$body, for multipart
content content FastRWeb now provides parse.multipart()
function (courtesy of Jeff Horner).

o	Rcgi will respond with appropriate status code to various
error conditions, such as failed connection. Previously, Rcgi
would always respond with 200 OK.

o	Rcgi bugfix: the parameter sanitization code was behaving

o	Rcgi has been updated to switch to binary stdout for file and
tmpfile on Windows, otherwise binary data (like images) will
arrive malformed at the webserver when running FastRWeb on
Windows (thanks to Francois Guillem for reporting and

o	clean up quoting inside attributes in o* tools

o	added oclear() to re-set output and/or headers

o	Parameters to run() were passed in URL-encoded form - that was
a bug. They are now passed in decoded form as intended.
WARNING: if you worked around this bug in your scripts for
FastRWeb 1.0 make sure you remove the work around for
FastRWeb 1.1 and higher (check for the presence of webapi
if you need to support both).

1.0-1 (2011/12/10) o added rudimentary form elements constructors: oinput(), oselection() and osubmit()

o	some S3 methods were not registered in the namespace

1.0-0 (2011/10/07) o CRAN release

o	add examples and tmp.R implementation

o	add support for headers manipulation

o	add sample project root configuration
and for installation

0.1-0 (2008/12/06) o add WebResult and WebPlot classes

o	first public version

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.


1.1-1.1 by Simon Urbanek, 9 days ago

Browse source code at

Authors: Simon Urbanek <[email protected]> , Jeffrey Horner <[email protected]>

Documentation:   PDF Manual  

Task views: Web Technologies and Services, Model Deployment with R

GPL-2 license

Imports base64enc, grDevices, stats, utils, Cairo

Suggests Rserve

Enhanced by Cairo.

See at CRAN