Search packages, repositories and app categories

Package detailsv3.0.0

panorama_viewer

Panorama Viewer - A 360-degree panorama viewer reusable widget.

AndroidiOS
30-day downloads
13.9K
Likes
37
Pub points
160

Install package

flutter pub add panorama_viewer

Package Overview

Package selection guidance compiled from public package information, community data, and project usage.

Panorama Viewer is a reusable Flutter widget designed to display 360-degree panoramic images with smooth interactive navigation. It enables users to explore immersive spherical views by dragging or tilting the device, making it ideal for virtual tours, real estate, and travel apps. Built with performance and simplicity in mind, the widget supports both Android and iOS platforms. It integrates seamlessly into existing Flutter projects using a straightforward API.

Use cases

  • Virtual tours
  • Real estate walkthroughs
  • Travel and tourism apps
  • Interactive product showcases
  • Educational 360° content

Key features

  • 360-degree interactive viewing
  • Device motion support
  • Smooth panning and zooming
  • Cross-platform compatibility (Android & iOS)
  • Simple integration with Flutter
  • Optimized rendering for performance

Suitable for

  • Developers building immersive experiences
  • Apps requiring 360° image viewing
  • Mobile applications targeting Android and iOS
  • Projects focused on visual engagement

Considerations

  • Requires high-resolution panorama images
  • May impact performance on low-end devices
  • Limited customization options beyond basic controls
  • Best suited for full-screen displays

Original README

Original README snapshot from the linked source repository. Visit the repository for the latest content.

Panorama Viewer

A 360-degree panorama viewer.

This package is an updated porting of the plugin https://github.com/zesage/panorama.

Getting Started

Add panorama as a dependency in your pubspec.yaml file.

dependencies:
  panorama_viewer: ^2.0.4

Import and add the Panorama Viewer widget to your project.

import 'package:panorama_viewer/panorama_viewer.dart';
... ...
  
@override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Center(
        child: PanoramaViewer(
          child: Image.asset('assets/panorama360.jpg'),
        ),
      ),
    );
  }

Migration from the Panorama package

  • In the dependencies, use panorama_viewer instead of panorama.
  • In the Dart files where you use panorama, change the import to: import 'package:panorama_viewer/panorama_viewer.dart';.
  • Change the widget name from Panorama to PanoramaViewer.
  • If you've used SensorControl, change SensorControl.Orientation to SensorControl.orientation. All constant names are now in lower camel case, following the latest Dart best practices.

Web implementation

On the web, sensors are not utilized because the sensor library used is only compatible with iOS and Android devices. Additionally, on some Android devices, if the panoramic image is too large, nothing is displayed. When checking the console log remotely, you may encounter WebGL errors or warnings.

Categories

Dependencies

Dependency list 2 items

Source repository

Projects using this package

No data available yet.