-
Notifications
You must be signed in to change notification settings - Fork 136
STAC Hackathon
Thanks for joining our two-day hackathon to help improve Digital Earth Australia’s (DEA) Notebooks!
The primary goal of the hackathon is to transition DEA Notebooks to use odc-stac. This will be the first full repository refresh of DEA Notebooks since 2019. A more detailed list of hackathon goals is outlined below.
- Convert DEA Notebooks repo to use
odc-stac.loadrather thandatacube.load - Develop skills and knowledge on
odc-stac(and STAC more generally) - Further test, refine, and document alternate access patterns for DEA (e.g. CodeSpaces, Colab)
- Develop communications and KH articles on the update to DEA Notebooks
- Address backlog DEA Notebooks tasks (‘Issues’)
- Add/update documentation and guides to the DEA Notebooks wiki on accessing DEA data via sandbox, GitHub Codespaces, Google Colab and local environments
Day 1
9am
- Introduction
- Assign yourself (or small team) to tasks in the Hackathon project board
- Get started!
Day 2
9am
- Open discussion on any issues encountered on Day 1
3.30pm
- Showcase of work
- Discuss next steps and timeline for approval and deployment of updated DEA-Notebooks
- Publication of JOSS paper timeline?
- Notebook updated to follow updated DEA Notebooks template format
- For STAC loading:
- odc-stac
load()andconfigure_s3_accessimported -
pystac_clientClientimported - Environment setup includes
catalog,stac_clientandconfigure_s3_access() - Cell that searched a collection for items with
pystac-client - Cell that loads discovered items into an xarray with
odc-stac
- odc-stac
- Notebook no longer requires
datacube - Notebook no longer does
sys.path.insert(1, '../Tools/')
- Hackathon project board: See what needs doing, and what others are working on
- Prioritised notebook list: Shows which notebooks are highest priority for updating (but feel free to pick any!)
- Set up instructions: How to get your environment running - see below
-
develop_stacbranch: The branch we're working in - make sure you're on it! - DEA_notebooks_template: The latest notebook layout and style we are standardising on
- Introduction to loading data with STAC
- Introduction to DEA Surface Reflectance (Landsat, Collection 3)
- Using "load_ard" to load and cloud mask Landsat and Sentinel-2
- Generating satellite imagery animations
- Monitoring coastal erosion along Australia's coastline
- Knowledge Hub article on STAC
- DEAfrica
odc-stacconversion repository - FrontierSI
odc-stacexample notebooks odc-stacdocs pagepystac-clientdocs pagepystacdocs page- STAC spec
- Introduction to STAC (with the Brazilian DataCube)
- Start up an "unstable" Sandbox server
- Navigate to where you have cloned your repo, e.g.:
cd dev/dea-notebooks - Make sure you have the latest copy of the repo:
git pull - Check out
develop_stacbranch:git checkout --track origin/develop_stac - Create a copy of
develop_stacto do your work:git checkout -b my_new_branch develop_stac - Install latest local version of DEA Tools:
pip install -e .
Important
Installing DEA Tools with pip install -e . is important to make sure you can access any functions we update during the hack.
- Update your notebook to use STAC and the new DEA Notebooks template
- When ready, commit and push your changes:
git commit -am 'I made some changes woooo' git push - Raise a pull request in the DEA Notebooks repository, setting the "base branch" as
develop_stac:
Instead of using the sandbox environments, you can also launch a GitHub CodeSpace cloud instance by clicking the badge below. If you are accessing DEA notebooks from outside the Geoscience Australia organisation, you should use this option.
Tip
Allow CodeSpaces a few minutes to bootup and for all python libraries to install.
Warning
When you open a Codespace, the compute time is billed to your own GitHub account (using your free monthly allowance or any paid plan you may have). Free users get 120 compute hours per month. The compute size set up for this repo is 4 cores, 16GB RAM, 15GB of storage. On a free account, this means you have 30 free hours of usage per month. You can change these settings before launching the codespaces, but keep in mind this will affect the total number of hours you can use for free.
If you work within vs code, you can open codespaces within your IDE rather than in a web UI. To do this, you must:
- have vs code installed
- install the codespaces extension from the vs code extensions tab:
- Set the default editor to VS Code (Desktop) by:
- In the upper-right corner of any page on GitHub, click your profile picture, then click Settings
- In the "Code, planning, and automation" section of the sidebar, click Codespaces
- Under "Editor preference", select the option you want
You can also find instructions for setting up codespaces to open in vs code here.

Updating this wiki: If you notice anything incorrect or out of date in this wiki, please feel free to make an edit!
License: All code in this repository is licensed under the Apache License, Version 2.0. Digital Earth Australia data is licensed under the Creative Commons by Attribution 4.0 license.
Contact: If you need assistance with any of the Jupyter Notebooks or Python code in this repository, please post a question on the Open Data Cube Discord chat or on the GIS Stack Exchange using the open-data-cube tag (you can view previously asked questions here). If you would like to report an issue with any notebook, you can file one on Github.