Framework-independent loaders and writers for visualization, 3D, geospatial, tabular, and scientific data.
Formats, encodings, and protocols by module (see each README for runtime and implementation limits):
| Module | Formats, encodings, and protocols |
|---|---|
@loaders.gl/arcgis |
ArcGIS, FeatureServer, MapServer, ImageServer, VectorTileServer, SceneServer, PBF, JSON, GeoJSON. |
@loaders.gl/archives |
ZIP, TAR. |
@loaders.gl/compression |
DEFLATE, zlib, GZIP, Brotli, Snappy, LZ4, LZO, BZip2, XZ, LZMA, Zstandard, Zstd. |
@loaders.gl/documents |
XML, HTML, YAML, TOML, BSON, Markdown. |
@loaders.gl/core |
Arrow, GeoArrow, GeoJSON, WKT, WKB. |
@loaders.gl/crypto |
CRC32, CRC32C, MD5, SHA-256. |
@loaders.gl/geospatial |
KML, KMZ, GPX, TCX, Shapefile, SHP, SHX, DBF, CPG, PRJ, FlatGeobuf, GeoPackage, WKT, WKT CRS, WKB, TWKB. |
@loaders.gl/graphs |
DOT, GraphML, GEXF. |
@loaders.gl/images |
PNG, JPEG, GIF, WebP, AVIF, BMP, ICO, SVG; KTX, KTX2, DDS, PVR, Basis, Crunch, Radiance HDR; browser MP4 loading and GIF generation. Availability depends on runtime and optional codecs. |
@loaders.gl/ogc |
WMS, WFS, WMTS, WCS, CSW, GML, OGC API, STAC, STAC API, XML, JSON, GeoJSON. |
@loaders.gl/pointclouds |
LAS, LAZ, PCD, PLY. |
@loaders.gl/raster |
GeoTIFF, TIFF, COG, OME-TIFF, LERC, LERC1, LERC2, quantized mesh, Mapbox Terrain-RGB, Terrarium, PNG, JPEG, GIF, WebP, BMP. |
@loaders.gl/scene |
Draco, glTF, GLB, OBJ, MTL, OpenUSD, USD, USDA, USDZ. OpenUSD support covers ASCII USDA and uncompressed USDZ archives with an ASCII root layer. |
@loaders.gl/scientific |
NPY, NetCDF, NetCDF-4, Zarr, GeoZarr, OME-Zarr, SpatialData, GRIB2, HDF5, VTK, VTI, VTR, VTS, VTU, VTP. GRIB2, HDF5, NetCDF-4, and VTK readers have the implementation limits documented below. |
@loaders.gl/splats |
SPLAT, KSPLAT, SPZ, RAD. |
@loaders.gl/sql |
SQL, Arrow. |
@loaders.gl/tables |
Arrow, Feather, GeoArrow, Avro, AVSC, CSV, TSV, DSV, JSON, GeoJSON, NDJSON, JSONL, NDGeoJSON, GeoJSONL, LDGeoJSON, Lance, ORC, Parquet, GeoParquet, Delta Lake. |
@loaders.gl/tiles |
MLT, MapLibre Tile, MVT, Mapbox Vector Tile, TileJSON, Mapbox Style, PMTiles. |
@loaders.gl/tiles-3d |
3D Tiles, B3DM, I3DM, PNTS, CMPT, subtree, 3TZ, I3S, SLPK, LEPCC, ArcGIS Web Scene, COPC, LAS, LAZ, Potree. |
@loaders.gl/traces |
Chrome Trace, Perfetto Trace, OpenTelemetry, OTLP, OTLP JSON, OTLP Protobuf, Jaeger, Zipkin, JSON, JSON Lines, NDJSON. |
loaders.gl is a collection of framework-independent loaders for geospatial, 3D, and large-data visualization, part of vis.gl.
loaders.gl is extensively documented on the loaders.gl website.
See References and credits for the people, upstream implementations, specifications and datasets behind loaders.gl. Each published package includes a source and license notice inventory.
See CONTRIBUTING.md.
-
Run
yarn installto install workspace dependencies. -
Run
yarn buildto build the modules, thenyarn build-workersto generate worker bundles. Rebuild workers after each module build. -
Run
yarn test-nodefor Node.js tests andyarn test-headlessfor Chromium tests, oryarn testfor both. -
Run
yarn lint fixto apply lint and formatting fixes. -
Run
yarn test-websiteto install website dependencies and build the documentation site. -
Run
yarn build-appsto run the tile-converter app build (currently the only app in this repository). -
Run
yarn test-appsto exercise the tile-converter app test/build script when available.
See the development environment guide for runtime requirements and browser setup.
loaders.gl uses the MIT license.
Some individual loaders are forked from other open source code bases that are licensed under different but compatible permissive licenses such as Apache 2 or BSD.
Data, imagery and service content have their own terms, separate from the code license.
You can check the "Attributions" section for each loader module before you install it if the details matter to you.