httpuv: HTTP and WebSocket server library for R

Travis build status AppVeyor Build Status

httpuv provides low-level socket and protocol support for handling HTTP and WebSocket requests directly from within R. It is primarily intended as a building block for other packages, rather than making it particularly easy to create complete web applications using httpuv alone. httpuv is built on top of the libuv and http-parser C libraries, both of which were developed by Joyent, Inc.


You can install the stable version from CRAN, or the development version using devtools:

# install from CRAN

# or if you want to test the development version here
if (!require("devtools")) install.packages("devtools")

Since httpuv contains C code, you’ll need to make sure you’re set up to install packages. Follow the instructions at

Debugging builds

httpuv can be built with debugging options enabled. This can be done by uncommenting these lines in src/Makevars, and then installing. The first one enables thread assertions, to ensure that code is running on the correct thread; if not. The second one enables tracing statements: httpuv will print lots of messages when various events occur.


To install it directly from Github with these options, you can use with_makevars, like this:

  }, assignment = "+="

© 2013-2018 RStudio, Inc.