Skip to main content
Photo Sphere Viewer is an open-source JavaScript library for embedding interactive 360° panoramic viewers in web applications. It is built on Three.js and delivers smooth, hardware-accelerated WebGL rendering. The library follows a modular architecture: the core package provides the viewer, while adapters and plugins are installed separately.

Key features

  • Equirectangular and cubemap support — load standard equirectangular JPEGs, cubemap faces, tiled formats, and video panoramas via adapter packages
  • Plugin system — extend the viewer with official plugins for markers, virtual tours, galleries, maps, gyroscope, autorotation, and more
  • TypeScript — fully typed API including events, adapter configs, and plugin configs
  • Three.js powered — WebGL rendering with 60fps navigation and high-DPI support
  • Modular packages — install only what you need; all packages are scoped under @photo-sphere-viewer/*
  • MIT license — free to use in personal and commercial projects

Packages

The library is split into focused packages. Install the ones you need. Core
PackageDescription
@photo-sphere-viewer/coreThe Viewer class, core rendering, and base plugin/adapter infrastructure
Adapters
PackageDescription
@photo-sphere-viewer/cubemap-adapterLoad panoramas as cubemap faces
@photo-sphere-viewer/cubemap-tiles-adapterTiled cubemap loading for large images
@photo-sphere-viewer/cubemap-video-adapterCubemap video panoramas
@photo-sphere-viewer/equirectangular-tiles-adapterTiled equirectangular loading
@photo-sphere-viewer/equirectangular-video-adapterEquirectangular video panoramas
Plugins
PackageDescription
@photo-sphere-viewer/autorotate-pluginAutomatic rotation with optional keypoints
@photo-sphere-viewer/compass-pluginCompass overlay indicating viewing direction
@photo-sphere-viewer/gallery-pluginThumbnail gallery for navigating multiple panoramas
@photo-sphere-viewer/gyroscope-pluginDevice orientation / gyroscope control
@photo-sphere-viewer/map-pluginCustom image map overlay with hotspots
@photo-sphere-viewer/markers-pluginAnnotate panoramas with HTML, SVG, or image markers
@photo-sphere-viewer/overlays-pluginStatic or video image overlays on the panorama
@photo-sphere-viewer/plan-pluginGeographic map (OpenStreetMap) with GPS position
@photo-sphere-viewer/resolution-pluginSwitch between panorama resolutions
@photo-sphere-viewer/settings-pluginSettings panel for other plugins
@photo-sphere-viewer/stereo-pluginVR/stereoscopic rendering
@photo-sphere-viewer/video-pluginControls for video panoramas
@photo-sphere-viewer/virtual-tour-pluginConnect panoramas into a navigable tour
@photo-sphere-viewer/visible-range-pluginRestrict the visible yaw/pitch range

Next steps

Getting started

Install the library and create your first panorama viewer.

Plugins overview

Browse the full list of official plugins and how to use them.

Adapters overview

Learn how to load cubemaps, tiled images, and video panoramas.

Configuration

Explore all viewer options and how to configure them.

Build docs developers (and LLMs) love