CesiumJS is a JavaScript library for creating 3D globes and 2D maps in a web browser without a plugin. It uses WebGL for hardware-accelerated graphics, and is cross-platform, cross-browser, and tuned for dynamic-data visualization.
Examples π Docs π Website π Forum
Visit the Downloads page to download a pre-built copy of CesiumJS.
If youβre building your application using a module bundler such as Webpack, Parcel, or Rollup, you can install CesiumJS via the cesium
npm package:
npm install cesium --save
import * as Cesium from "cesium";
import "cesium/Build/Cesium/Widgets/widgets.css";
const viewer = new CesiumWidgets.Viewer("cesiumContainer");
Or, import individual modules to benefit from tree shaking optmtimizations through most build tools:
import { Viewer } from "cesium";
import "cesium/Build/Cesium/Widgets/widgets.css";
const viewer = new Viewer("cesiumContainer");
In addition to the cesium
package, CesiumJS is also distrubuted as smaller scoped npm packages:
@cesium/engine
- CesiumJS's core, rendering, and data APIs@cesium/widgets
- A widgets library for use with CesiumJS
Alternatively, use a content delivery network (CDN) URL to embed CesiumJS in an HTML page.
See our Quickstart Guide for more information on getting a CesiumJS app up and running.
TODO: Link to build guide/other local development docs
Interested in contributing? See CONTRIBUTING.md. β€οΈ
Our mission is to create the leading 3D globe and map for static and time-dynamic content, with the best possible performance, precision, visual quality, platform support, community, and ease of use.
Apache 2.0. CesiumJS is free for both commercial and non-commercial use.
CesiumJS can stream 3D content such as terrain, imagery, and 3D Tiles from the commercial Cesium ion platform and other content sources. You are free to use any combination of content sources with CesiumJS that you please. Using Cesium ion helps support CesiumJS development. β€οΈ
Instructions for serving local data are in the CesiumJS Offline Guide.