:point_left: Click here to run the examples online. Please retry if the build process does not finish after some minutes.
One of the examples will walk you through a full CML processing from raw data provided by the OpenMRG dataset to a rainfall map animation like this one:
The OPENSENSE software sandbox is a collection of software packages for processing data from opportunistic rainfall sensors, developed within the COST Action OPENSENSE.
The purpose of this repo is to showcase existing codebases and existing open datasets in one reproducible environment that can be run online via mybinder.
Not all notebooks are in a final state, but the OpenMRG usecase and data exploration notebooks are nicely prepared to give new users a quick overview of code and data that is available.
This repository is inteded to be run online via the "launch binder" button above. Note that it can take some minutes to spin up the online environment. In some cases it might not start at all due to limited resources of the binder service. In that case, just try again some minutes later.
To run the code locally and/or to contribute to this repository, you need to set up the conda
environment defined in the file environment.yml
(located in the seperated environment repository) which is also used by mybinder to build the environment that you run online.
First, you need to have conda
installed. If this is you first installation of conda
we recommend to start with the mambaforge
installer which is available for Windows, Linux and Mac here. Note that "mamba" is just a faster implementation of "conda", and "forge" refers to the fact that you will use the community packages from the conda-forge "channel", which has a larger choice of scientific Python and R packages than the default conda "channel".
With conda
or mamba
set up, follow these steps:
git clone
will create a new directory OPENSENSE_sandbox in the directory that you are currently in and place the repo content there.
git clone --recursive https://github.com/OpenSenseAction/OPENSENSE_sandbox.git
environment.yml
file from the seperated environment repository via wget
like this
wget https://raw.githubusercontent.com/OpenSenseAction/OPENSENSE_sandbox_environment/main/environment.yml
or via curl
curl -O https://raw.githubusercontent.com/OpenSenseAction/OPENSENSE_sandbox_environment/main/environment.yml
If neither wget
nor curl
are available, you can also download the environment file via the browser, but make sure to save it in the directory to which you cloned the sandbox repo in step 1.
conda
environment. Note that you have to be in a terminal/shell where conda
or mamba
is available. Please refer to the conda
docs to find out how to achieve that.
mamba env create environment.yml
conda activate opensense_sandbox
jupyter-lab
in addition. It is not in then environment.yml
because mybinder installs it by default.
mamba install -c conda-forge jupyterlab
jupyter-lab
. It will open in your default browser.
jupyter-lab
notebooks/index.ipynb
and run the cell with the init script, using the line of code for local installation which is commented out by default. This will clone the code of the submodules, add them to the conda env and install the R packages.We encourages everyone to contribute to the developement of the OPENSENSE_sandbox.
The easiest way is to fork the repository and submit a pull request (PR). Each PR automatically gets its own mybinder button to test everything in its defined environment. PRs will be iterated with and merged by the repository maintainers. If required we can also have dev branches in this repository.
Note that, if you have to change the dependencies, you can update your local conda
env based on an updated environment.yml
file like this (see here)
conda activate myenv
conda env update --file environment.yml --prune
Contributors to the OPENSENSE_sandbox are expected to act respectfully toward others in accordance with the OSGeo Code of Conduct.
All contributions shall comply to the project license. The individual included packages might have their own license, which has to be compatible with the one of the project license.