5 Free 360° Image Viewers for JavaScript Web and Mobile

pannellum

I have pannellum running on Flutter iOS using webview_flutter. This was my first experience using the package.

There are three ways to get the HTML/CSS/Javascript content into the Webview.

  1. from a string inside of the dart code
  2. from a local file saved in the application temp directory on the iPhone
  3. from a file stored in assets

If the file is stored in assets, then the pannellum library and the css can also be loaded from assets.

image

The index.html file looks like this:

<!DOCTYPE html>
<html lang="en">
<head>
    <title>Load file or HTML string example</title>
    <link rel="stylesheet" href="pannellum/pannellum.css" />
    <link rel="stylesheet" href="styles/style.css" />

    <script type="text/javascript" src="pannellum/pannellum.js"></script>

</head>
<body>

<h1>Local HTML file in assets</h1>

<div id="panorama"></div>
<script>
pannellum.viewer('panorama', {
    "type": "equirectangular",
    "panorama": "https://theta-image-api.s3.amazonaws.com/theta_images/R0010176.JPG"
});
</script>

</body>
</html>

While this works great, I can’t figure out a way to pass the data of the image into pannellum.

Also, this requires the image itself to be hosted on the network.

I recently built an example using panorama_viewer that does show the 360 image navigation without using webview.

flutter_iphone

I’m going to take a look at flutter_inappwebview and see if I can make more progress with using the technology in more situations.

Update Oct 1 late morning

Unfortunately, the WebView Asset Loader does not work on iOS.

https://inappwebview.dev/docs/webview/webview-asset-loader