DOCS · PROJECT · LICENSE

License

gdal3.js is released under the MIT License. The build you actually ship is LGPL-2.1-or-later by default (because it bundles a few LGPL libraries), but you can configure a build with permissive licenses only if you need one.

NOT LEGAL ADVICEThis page is a plain-language summary to help you orient. It is not legal advice and makes no representation that any build is suitable for your use. Verify the license terms of gdal3.js and every bundled component against your own distribution, and consult a qualified expert. Compliance is your responsibility.

The short version

What it means for your app

The default build is LGPL-2.1-or-later because it bundles GEOS, SpatiaLite and libiconv. What the LGPL requires of you, and whether it fits your distribution (commercial, closed-source, statically bundled or otherwise), is for you to determine against the actual license texts. As a non-exhaustive pointer to what the LGPL commonly involves, not a legal conclusion:

Read the license texts of gdal3.js and every bundled component, confirm they fit your distribution model, and consult a qualified license expert for your specific case. The responsibility for compliance is yours.

Bundled libraries

The default build compiles in the components below. Three are marked copyleft (LGPL); the rest carry permissive licenses. Each component's own license is the authoritative source for its terms.

ComponentVersionLicenseCopyleft
gdal3.js (this project)3.0.0MITNo
GDAL3.13.1MIT/XNo
PROJ9.8.1MITNo
GEOS3.14.1LGPL-2.1+yes
SpatiaLite5.1.0MPL / GPL / LGPLyes
libiconv1.19LGPLyes
SQLite3.53.2Public domainNo
libtiff4.7.1libtiff (BSD-like)No
libjpeg-turbo3.1.4.1BSD-3 / IJGNo
libwebp1.6.0BSD-3No
Zstd1.5.7BSD-3No
LERC4.1.0Apache-2.0No
libgeotiff1.7.4MITNo
Expat2.8.1MITNo
zlib1.3.2zlibNo
curl8.20.0curl (MIT-like)No
OpenSSL4.0.1Apache-2.0No
EmscriptentoolchainMIT/NCSANo
cpp.js2.0.0-beta.23MITNo

Excluding the copyleft libraries

To exclude the copyleft components, override the cpp.js config to drop the three LGPL libraries: GEOS, SpatiaLite and libiconv. What remains (GDAL, PROJ, the codecs, SQLite, …) carries MIT/BSD/permissive licenses. Confirm the resulting license set against each component before you rely on it.

The trade-off is functional: dropping GEOS removes geometry operations (much of OGR's processing), SpatiaLite removes the SpatiaLite database driver, and libiconv removes some character-encoding conversions. See configuration for how to override dependencies.

GPL → LGPL history

The project started under the GPL and moved to the LGPL early on, at the community's request (issue #36).