Repolode
CesiumGS

CesiumGS/cesium

A JavaScript library for rendering interactive 3D globes and 2D maps in the browser with WebGL, without plugins.

Open-source alternative to:Google Earth

Stars
15,862
Forks
3,890
Open issues
1,740
Last commit
12 hours ago

What is it?

CesiumJS is a JavaScript library for building 3D globes and 2D maps that run directly in a web browser without a plugin. It uses WebGL for hardware-accelerated rendering and is designed for visualizing dynamic data over a high-precision WGS84 globe.

The library is built on open formats and aims to scale to large datasets. It can stream 3D Tiles, terrain, and imagery from Cesium ion, a commercial hosting platform, or from other offline and online sources using open standards. The core is distributed as the cesium npm package, with scoped packages @cesium/engine and @cesium/widgets for more granular dependency management, and it supports tree shaking through common module bundlers such as Webpack, Parcel, and Rollup.

CesiumJS is released under the Apache 2.0 license and is free for commercial and non-commercial use. A pre-built download is also available for projects that do not use a bundler.

Key features

  • 01Renders 3D globes and 2D maps in the browser using WebGL, with no plugin required.
  • 02Streams 3D Tiles and other standard geospatial formats from Cesium ion or other sources.
  • 03Provides a high-precision WGS84 globe for visualizing and analyzing geospatial data.
  • 04Supports tree shaking through modular npm packages for smaller application bundles.
  • 05Works across desktop and mobile browsers.

Use cases

  • Building web applications that display 3D terrain, imagery, or city models.
  • Visualizing real-time or time-dynamic geospatial data such as vehicles or satellites.
  • Creating interactive 2D or 3D map interfaces that run without browser plugins.

Quick start

  1. 1

    Install the cesium npm package

    npm install cesium --save
  2. 2

    Import Viewer and its CSS in your app code

  3. 3

    Create a viewer bound to a container element

Things to know

  • Streaming premium terrain, imagery, and 3D Tiles content is best done with a Cesium ion account, which is a commercial subscription service.

Topics

FAQ

What is cesium?
A JavaScript library for rendering interactive 3D globes and 2D maps in the browser with WebGL, without plugins. CesiumJS is a JavaScript library for building 3D globes and 2D maps that run directly in a web browser without a plugin. It uses WebGL for hardware-accelerated rendering and is designed for visualizing dynamic data over a high-precision WGS84 globe.
Is cesium free to use? What license does it have?
cesium is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
Is cesium still maintained?
Actively maintained. The last commit to cesium was on Oct 20, 2026.
What can I use cesium for?
Building web applications that display 3D terrain, imagery, or city models. Visualizing real-time or time-dynamic geospatial data such as vehicles or satellites. Creating interactive 2D or 3D map interfaces that run without browser plugins.
How do I install cesium?
Install the cesium npm package: npm install cesium --save Import Viewer and its CSS in your app code Create a viewer bound to a container element
Where can I get cesium?
The source code and installation instructions are on GitHub: https://github.com/CesiumGS/cesium

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

Related projects