Vitessce is a "serverless" tool, and can read data hosted in object stores or static web servers, such as AWS S3. In fact, this means that both the Vitessce viewer static web app and your data resources can be hosted in this way.
When using AWS S3, you will need to ensure that your bucket objects are readable by the outside world.
Configure the following in your bucket's
- Block all public access: off
For a bucket named
foo-bar, you will need to add the following in
Remember to change
foo-bar to your bucket name in the "Resource" field.
Add the following CORS configuration to the bucket to allow files to be read from other domains.
First ensure that your bucket has fully public permissions for reading data - grant full read permissions to the user
allUsers - then use the following cors config along with the command
gsutil cors set my-config.json gs://my-bucket:
Simply add your data files to the
gh-pages branch of your repository, enable GitHub Pages in the repository settings tab, and add a
.nojekyll file to the root of the
Note: OME-TIFF files hosted on GitHub Pages are currently not supported, as GitHub Pages does not support HTTP requests with the
Before uploading data to a cloud object store, you may want to work with the data locally.
Vitessce supports local file URLs.
To serve data locally, any web server that can serve a directory should work, but we recommend
http-server, which can be installed with Homebrew (on macOS) or NPM:
Then, navigate to your data directory and run the server:
And make sure that the
url values in your Vitessce view config point to the local files: