Observed since 20 Oct, 19:36 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
Create interactive 3D maps, globe visualizations, and flat world maps in JavaScript with Canvas 2D and no WebGL.
Important: a commercial license is required for production use
CanvasGlobe is proprietary commercial software. Public production use without a valid license key is restricted and displays a licensing notice. Purchase a license and review the license agreement. For help with purchasing or licensing, email globe@swiftools.com.
3d-maps is an official package entry for
CanvasGlobe, an interactive JavaScript 3D
maps, globe, and world-map library rendered with Canvas 2D. It provides the same API,
renderer, features, documentation, commercial license, and production behavior
as canvas-globe without duplicating the implementation.
Use it for animated globe maps, flat map projections, location markers, routes, country data, live dashboards, landing pages, logistics visualizations, travel products, and geographic storytelling.
npm install 3d-maps
The package installs canvas-globe as its rendering engine. You only need one
CanvasGlobe license for the same permitted product, regardless of which official
package name you install.
<canvas id="map" style="width: 100%; max-width: 720px; aspect-ratio: 1"></canvas>
import { createGlobe } from "3d-maps";
const map = createGlobe(document.querySelector("#map"), {
licenseKey: "your-license-key",
preset: "hologram",
mode: "globe",
autoRotate: true,
markers: [
{ lat: 19.076, lon: 72.878, label: "Mumbai" },
{ lat: 51.507, lon: -0.128, label: "London" },
{ lat: 40.713, lon: -74.006, label: "New York" },
],
arcs: [
{ from: { lat: 19.076, lon: 72.878 }, to: { lat: 51.507, lon: -0.128 } },
{ from: { lat: 51.507, lon: -0.128 }, to: { lat: 40.713, lon: -74.006 } },
],
});
Switch between an interactive globe and flat projections using the same data:
map.setMode("globe");
map.setOptions({
mode: "map",
projection: "naturalEarth",
});
Available map projections include equirectangular, Mercator, and Natural Earth.
Optional entry points keep advanced features separate from the core import:
import { aurora, routeDashes } from "3d-maps/fx";
import { tilegram } from "3d-maps/charts";
import { applyRecipe, keynoteGlobe } from "3d-maps/recipes";
map.use(aurora());
map.use(routeDashes({
routes: [
{ from: { lat: 19.076, lon: 72.878 }, to: { lat: 51.507, lon: -0.128 } },
],
}));
map.use(tilegram({ values: { IN: 214, GB: 164, US: 196 } }));
const removeRecipe = applyRecipe(map, keynoteGlobe());
Explore and configure the effects visually in the Effect Studio.
import { Globe } from "3d-maps/react";
export default function WorldMap() {
return (
<Globe
licenseKey="your-license-key"
preset="midnight"
autoRotate
markers={[{ lat: 28.614, lon: 77.209, label: "New Delhi" }]}
/>
);
}
Dedicated framework packages are also available:
| Framework | Package |
|---|---|
| React | react-canvas-globe |
| Vue 3 | canvas-globe-vue |
| Angular | canvas-globe-angular |
| Svelte | canvas-globe-svelte |
| Web Components | canvas-globe-web-component |
| Import | Purpose |
|---|---|
3d-maps | Core renderer, data helpers, projections, markers, routes, and exports |
3d-maps/element | Framework-independent custom element |
3d-maps/react | React component |
3d-maps/fx | Visual, camera, transition, and data effects |
3d-maps/fx/interaction | Advanced pointer and selection interactions |
3d-maps/charts | Animated geographic chart layers |
3d-maps/recipes | Complete composed visual treatments |
3d-maps/controls | Search, timeline, threshold, and crossfilter bindings |
3d-maps/places | Searchable bundled place data |
3d-maps/data/world | Bundled world geometry |
Support and licensing: globe@swiftools.com
Download counts and popularity will appear here as the collector receives them.
| Version | Published | Direct dependencies | Open version |
|---|---|---|---|
| 1.4.1Registry latest | 22 Sept 2026 | 2 |
This describes our collected data; it is not a security assessment.
Observed since 20 Oct, 19:36 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package:c46f88a6d27eff5e0498dd352b0bc59d9f2271aa743c8fd79f540ecc0c14a789