ImageTracerJS
github.com
What it is
ImageTracerJS is a JavaScript raster-image tracer that converts image data into SVG vector output. It can run in a browser by loading its JavaScript file and calling tracing functions, or in Node.js through a command-line interface. Its API returns SVG strings or tracedata for further processing. Browser-only asynchronous functions and synchronous ImageData functions are available for browsers and Node.js. Tracing can be configured through an options object or presets, including posterized, grayscale, detailed, and artistic variants. Controls cover line and spline error thresholds, path omission, corner enhancement, color sampling, palette size, layering, SVG rendering, and blur preprocessing. The command-line interface supports nearly all options, with pal and layercontainerid as exceptions. Node.js image loading requires an external library because Node.js lacks built-in canvas and DOM support. The project is also available as an Inkscape extension. ImageTracerJS is free under the Unlicense, which permits use, modification, and distribution for commercial or non-commercial purposes, with no warranty. The project notes that large images or many layers can trigger out-of-memory errors and that error handling is limited.
Spec sheet
- Purpose
- ImageTracerJS is a raster image tracer and vectorizer written in JavaScript.Read 9 Oct 2026 · github.com
- Intended users
- The README documents browser and Node.js usage, making the project suitable for JavaScript developers integrating raster-to-vector conversion into web or Node.js workflows.Read 9 Oct 2026 · github.com
- API
- Its API can return SVG strings or tracedata, with browser-only asynchronous functions and synchronous ImageData functions for browsers and Node.js.Read 4 Oct 2026 · github.com
- License
- The project uses The Unlicense and describes the software as public domain, allowing commercial and non-commercial use.Read 9 Oct 2026 · github.com
- Browser use
- The README shows browser use by including the JavaScript file and calling ImageTracer functions.Read 9 Oct 2026 · github.com
- CLI limitation
- The command-line interface supports almost all options except pal and layercontainerid.Read 4 Oct 2026 · github.com
- CLI limits
- The CLI supports almost all options except pal and layercontainerid.Read 9 Oct 2026 · github.com
- Image loading in Node.js
- Node.js image loading requires an external library because Node.js does not have built-in canvas and DOM support, according to the README.Read 4 Oct 2026 · github.com
- Integration
- The project is available as an Inkscape extension, with the README linking to its extension page.Read 9 Oct 2026 · github.com
- Limitations
- The project notes that out-of-memory errors can occur easily with big images or many layers and that error handling is limited.Read 9 Oct 2026 · github.com
- Maker profile
- The GitHub profile identifies the account holder as András Jankovics.Read 4 Oct 2026 · github.com
- Node.js use
- The project includes a Node.js command-line interface and synchronous ImageData tracing functions for Node.js.Read 9 Oct 2026 · github.com
- Options
- Tracing can be configured with an options object or presets such as posterized, grayscale, detailed, and artistic variants.Read 4 Oct 2026 · github.com
- Other libraries
- The README demonstrates using pngjs to load a PNG into ImageData and simplify-js to process traced geometry.Read 9 Oct 2026 · github.com
- Output
- It converts image data into SVG strings and can return tracedata for further processing.Read 9 Oct 2026 · github.com
- Presets
- Built-in presets include default, posterized, curvy, sharp, detailed, smoothed, grayscale, fixed-palette, random-sampling, and artistic styles.Read 9 Oct 2026 · github.com
- Tracing controls
- Options control line and spline error thresholds, path omission, corner enhancement, color sampling, palette size, layering, SVG rendering, and blur preprocessing.Read 9 Oct 2026 · github.com
- Warranty
- The license states that the software is provided as-is without warranty.Read 4 Oct 2026 · github.com
Plans and prices
Strong points and limits
Strong points
- Produces SVG strings or tracedata.
- Works in browsers and Node.js.
- Offers numerous tracing controls and presets.
- Available as an Inkscape extension.
- Unlicense permits commercial and non-commercial use.
Limits
- Large images or many layers can cause out-of-memory errors.
- Error handling is limited.
- Node.js image loading requires an external library.
- CLI excludes pal and layercontainerid options.
Who it suits
It suits JavaScript developers integrating raster-to-vector conversion into browser or Node.js workflows. The API and presets also support projects that need SVG output or tracedata for further processing.
Verdict
ImageTracerJS provides a configurable path from raster data to SVG, with browser and Node.js use and an Inkscape extension. Account for the CLI option exclusions and the documented memory and error-handling limits.
Where Specifiction places it
- Image Vectorization Software#6 of 268.2