node.native is a C++11 (aka C++0x) port for node.js.
Please note that node.native project is under heavy development.
I'm working on the first release at v0.1.0 branch.
Simplest web-server example using node.native.
#include <iostream> #include <native/native.h> using namespace native::http; int main() { http server; if(!server.listen("0.0.0.0", 8080, [](request& req, response& res) { res.set_status(200); res.set_header("Content-Type", "text/plain"); res.end("C++ FTW\n"); })) return 1; // Failed to run server. std::cout << "Server running at http://0.0.0.0:8080/" << std::endl; return native::run(); }
node.native consists of header files(*.h) only, but requires libuv and http-parser lib to use.
To compile included sample application(webserver.cpp) first run the following command in the project directory:
git submodule update --init
then,
make
alternatively you can set custom paths to http-parser and libuv if you dont want to use the submodules.
Tested on Ubuntu 11.10 and GCC 4.6.1. and OSX 10.8.2