Skip to content

A Vue-based STAC browser intended for static + dynamic deployment

Notifications You must be signed in to change notification settings

SpaceNetChallenge/stac-browser

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

STAC Browser

This is a Spatio-Temporal Asset Catalog (STAC) browser for static catalogs. It attempts to surface all included data in a user-centric way (an approach which can inform how data is represented in the evolving spec). It is implemented as a single page application (SPA) for ease of development and to limit the overall number of catalog reads necessary when browsing (as catalogs may be nested and do not necessarily contain references to their parents).

Running

By default, stac-browser will browse the ISERV catalog. To browse your own, set CATALOG_URL when building.

yarn
CATALOG_URL=https://s3.amazonaws.com/spacenet-stac/spacenet-repository.json yarn run build

Building

CATALOG_URL=http://path/to/catalog.json yarn run build

Contributing

tk - something about how the catalog (src/components/Catalog.vue) / sub-catalog (src/components/Catalog.vue) / item (src/components/Item.vue) templates are laid out

Why Vue?

This is my (Seth's) first Vue app. I've previously built a number of React SPAs and have helped maintain + create apps with Backbone, D3, jQuery, and others, though I'm mostly a server-side guy.

Of these, React (with Webpack) has provided me with the best development experience, especially for apps with relatively complex functionality.

However, when approaching the problem of building a STAC browser intended for others to (easily) contribute to and run against their own catalogs (both dynamically and when generating a static site), I wanted something with relative self-contained HTML and CSS (so that those unfamiliar with Vue wouldn't need to face JavaScript when making minor changes). Vue's single file components fit the bill.

For pre-rendering catalogs, chrisvfritz/prerender-spa-plugin looks like a promising way to use headless Chrome (puppeteer) to generate HTML for ease of search engine indexing.

If you're interested in experimenting with a STAC browser built with different JS frameworks, check out:

About

A Vue-based STAC browser intended for static + dynamic deployment

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Vue 80.4%
  • JavaScript 17.8%
  • HTML 1.8%