developmentseed / eoapi-risk

An implementation of eoAPI for Risk data and the Humanitarian sector
MIT License
2 stars 0 forks source link

Feat/getting started nb #13

Closed zacharyDez closed 10 months ago

zacharyDez commented 10 months ago

What I Changed

Adapted our demo notebook of eoAPI on the Turkey earthquakes with the following details:

How to Test It

What Feedback Am I Seeking

batpad commented 10 months ago

@zacharyDez this is looking really good to me!

I loaded up the notebook in our jupyterhub instance at https://jupyter.ifrc-risk.k8s.labs.ds.io/

It looks good, but I wasn't able to get a map to display? I definitely don't know my way around the notebook interface well, so likely something silly I'm doing wrong. Will this be easier if we can package things like httpx and ipyleaflet as part of the container image and don't require users to install?

This is looking really good to me @zacharyDez ! Excited to see how this shapes up and more involved use-cases as we add more datasets.

Already in its current form, if the map works, it would be great to show informally to some IFRC folks just to add more colour to some of the conversations we've been having around data catalogs, STAC, etc.

Let me know if you can help me with getting the map to display. If you're reasonably happy with this, I'd be in favour of merging soon / before the holidays and then we can iterate on specific things separately. The overall layout, structure and broad narrative all look really good to me.

zacharyDez commented 10 months ago

I investigated the issue with the map not rendering on our JupyterHub instance. It seems like it's an issue with our configuration. Here's a basic test I used:

!import IPython
!python -m pip install httpx ipyleaflet
from ipyleaflet import Map

Map(center=[34.6252978589571, -77.34580993652344], zoom=10)

☝️ returns the map object instead of rendering it... I'm unsure why this is happening, but the extension may not be enabled.

When I run

!jupyter nbextension enable --py --sys-prefix widgetsnbextension
!jupyter nbextension enable --py --sys-prefix ipyleaflet

I get a command not found error. @sunu, maybe you have an idea of how to solve this?

@batpad, I'm happy to share with IFRC. We need the visual and interactive side of it to be available before! The notebook is much better with the maps.

sunu commented 10 months ago

@zacharyDez @batpad The map should load if you reload the page after !pip install ipyleaflet. The reload makes sure the required javascript resources are loaded. Let me know if that doesn't work.

And I agree that we should add dependencies like ipyleaflet to the base image to make the notebook a bit more user friendly. That requires adding a pipeline to build our own base image instead of depending on a prebuilt base image.

On a related note: looks like the base image we are using did not get the nod from the repo maintainers (see https://github.com/jupyterhub/jupyter-remote-desktop-proxy/pull/51). Yuvi intends to move the base images to a separate repo. But for now we should move the build pipeline for the QGIS image into this repo

zacharyDez commented 10 months ago

@sunu, it works! So, if we had dependencies like ipyleaflet, would we not have to reload the page?

I think it is a good idea to merge then! 🚀