node package manager



npm install ariadne


A node.js frontend and wrapper for Thrift backends.


  • Provides a clean JSON-based interface to a backend server exposing Thrift.

    Allows using curl to interact with a Thrift-based server.

  • Captures console input, allows passing messages from it to the backend.

    Provides a way for tail -f $logfile | ... to easily reach the the Thrift-based backend.

  • Simple plug-in architecture to inject better visualizers for some endpoints.

    Makes it easy to beautify the outputs of certain Thrift methods when they need a bit more than formatted JSON with clickable links.

Note: Only one-parameter Thrift calls are now fully supported. Please refer to the test for more details.


Originally designed to be used with:


The minimalistic version of

Will connect to an running server or spawn a new one (use --server_command /path/to/my/binary or --connect_to_existing) and have its Thrifted methods prefixed with ariadne_* exported as HTTP endpoints on http://localhost:$PORT/ariadne/*.

  thrift: require('./gen-nodejs/API.js'),
  types: require('./gen-nodejs/api_types.js')
}.run(function() {