node package manager
We need your input. Help make JavaScript better: Take the 2017 JavaScript Ecosystem survey »



NPM version Build Status Coverage Status Dependency Status

The inkscape command line utility as a readable/writable stream. This is handy for situations where you don't want to worry about writing the input to disc and reading the output afterwards.

The constructor optionally takes an array of command line options for the inkscape binary:

var Inkscape = require('inkscape'),
    svgToPdfConverter = new Inkscape(['--export-pdf', '--export-width=1024']);

Import type can also be fed to the constructor (converting PDF to PNG):

var Inkscape = require('inkscape'),
    pdfToPngConverter = new Inkscape(['--export-png', '--export-width=1024', '--import-pdf']);

Inkscape as a web service (converts to a PNG):

var Inkscape = require('inkscape'),
    http = require('http');
http.createServer(function (req, res) {
    if (req.headers['content-type'] === 'image/svg') {
        res.writeHead(200, {'Content-Type': 'image/png'});
        req.pipe(new Inkscape(['-e'])).pipe(res);
    } else {
        res.end('Feed me an SVG!');


Make sure you have node.js and npm installed, and that the inkscape binary is in your PATH, then run:

npm install inkscape


3-clause BSD license -- see the LICENSE file for details.