Repolode
highcharts

highcharts/node-export-server

Node.js service that converts Highcharts.JS chart configs or SVG into PNG, JPEG, SVG or PDF files via CLI, HTTP server or module.

Stars
368
Forks
265
Open issues
92
Last commit
yesterday

What is it?

Highcharts Node.js Export Server converts Highcharts.JS charts into static image files without a browser front end. It accepts chart options as JSON or SVG input and outputs PNG, JPEG, SVG or PDF, which suits generating charts for reports, caching, or slides.

The project can run as a command-line tool, as an HTTP server that accepts POST requests, or as a Node.js module that can be called from your own code. Settings can come from a config file, environment variables, or CLI flags, with later sources taking precedence. The server also supports Docker, rate limiting, SSL, a worker pool with queue limits, and a health endpoint.

You can self-host it to avoid relying on the public export.highcharts.com service, which has rate limits. Using the public server or the export feature requires a valid Highcharts license.

Key features

  • 01Exports charts to PNG, JPEG, SVG or PDF.
  • 02Accepts chart options as JSON or SVG input.
  • 03Runs as a CLI, an HTTP server, or a Node.js module.
  • 04Configurable through config files, environment variables, or CLI flags.
  • 05Includes Docker support and a health check endpoint.
  • 06Supports rate limiting, SSL, and a worker pool with queue limits.

Use cases

  • Generating charts automatically in scheduled or batch reports.
  • Running a self-hosted export endpoint for chart export buttons on your website.
  • Producing static chart images for presentations or documents.
  • Creating charts from a Node.js report generator via the module API.

Quick start

  1. 1

    Install Node.js (v22.22.2 or higher is required for the current major version)

  2. 2

    Install the Export Server globally with npm

    npm install highcharts-export-server -g
  3. 3

    Run the Export Server CLI with your arguments

    highcharts-export-server

Things to know

  • The metadata gives no clear license (NOASSERTION), so check the repository's license terms before use.
  • Exports require a valid Highcharts License, and the public export server has a fair usage policy.
  • By default Highcharts scripts are fetched from the CDN on first export, so the server needs outbound network access unless you use the bundled npm package.

In collections

Topics

FAQ

What is node-export-server?
Node.js service that converts Highcharts.JS chart configs or SVG into PNG, JPEG, SVG or PDF files via CLI, HTTP server or module. Highcharts Node.js Export Server converts Highcharts.JS charts into static image files without a browser front end. It accepts chart options as JSON or SVG input and outputs PNG, JPEG, SVG or PDF, which suits generating charts for reports, caching, or slides.
Is node-export-server free to use? What license does it have?
node-export-server is open source under the Other license. Check the license terms before using it in commercial products.
Is node-export-server still maintained?
Actively maintained. The last commit to node-export-server was on Nov 5, 2026.
What can I use node-export-server for?
Generating charts automatically in scheduled or batch reports. Running a self-hosted export endpoint for chart export buttons on your website. Producing static chart images for presentations or documents. Creating charts from a Node.js report generator via the module API.
How do I install node-export-server?
Install Node.js (v22.22.2 or higher is required for the current major version) Install the Export Server globally with npm: npm install highcharts-export-server -g Run the Export Server CLI with your arguments: highcharts-export-server
Where can I get node-export-server?
The source code and installation instructions are on GitHub: https://github.com/highcharts/node-export-server

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects