Skip to content

GispoCoding/eis_toolkit

Repository files navigation

EIS Toolkit

Python package for mineral prospectivity mapping

Installation · Usage · Roadmap · Contributing · License

EIS Toolkit is a comprehensive Python package for mineral prospectivity mapping and analysis. EIS Toolkit is developed as part of EIS Horizon EU project, which aims to aid EU's efforts in the green transition by securing critical raw materials. EIS Toolkit serves both as a standalone library that brings together and implements relevant tools for mineral prospectivity mapping and as a computational backend for EIS QGIS Plugin.

Note

This repository is still in development. Check the wiki page of EIS Toolkit for list of tools and roadmap for more details about the project.

Installation

We recommend installing EIS Toolkit in an empty virtual environment to ensure compatibility between package versions.

EIS Toolkit is available in conda-forge and PyPI and can be installed with one of the following commands.

pip install eis_toolkit
conda install -c conda-forge eis_toolkit

A Python wheel can be downloaded also from the releases page of this GitHub repository.

Tip

GDAL needs to be installed separately on Windows when using pip / PyPI. If you have trouble installing EIS Toolkit due to GDAL, you can download a compatible GDAL wheel (for example from this repository), install it first, and then attempt to install EIS Toolkit again.

Usage

EIS Toolkit can be used in Python scripts, Jupyter notebooks or via the CLI. At the moment, most tools have their own module and are imported like this:

# In general
from eis_toolkit.category.module import module_function

# Some examples
from eis_toolkit.raster_processing.reprojecting import reproject_raster
from eis_toolkit.exploratory_analyses.pca import compute_pca

The documentation of EIS Toolkit can be read here. You can find several Jupyter notebooks in this repostiory that demonstrate how tools of EIS Toolkit can be used.

EIS QGIS Plugin

For those that prefer using tools of EIS Toolkit via a graphical user interface, check EIS QGIS Plugin. The plugin includes the main GUI application called EIS Wizard and all individual EIS Toolkit tools as QGIS processing algorithms.

The plugin is developed by the same core team that develops EIS Toolkit.

CLI

EIS Toolkit includes a Typer command-line interface that serves as a common interface for integrating the toolkit with external applications, such as QGIS. The CLI can be used directly too, for example

eis resample-raster-cli --input-raster path/to/raster.tif --output-raster path/to/output.tif --resolution 50 --resampling-method bilinear

For general help, use

eis --help

or help for a tool

eis <tool-name> --help

Note

Please note that the CLI has been primarily designed to communicate with external programs and may be clunky in direct use.

Roadmap

  • Milestone 1: Beta release 0.1 (November 2023). The toolkit should have the basic funtionalities required for a full MPM workflow. Official testing phase begins. The plugin will be still under active development.
  • Milestone 2: Release 1.0 (May 2024). Most features should be incorporated at this time and the toolkit useful for actual MPM work. Testing will continue, more advanced methods added and the user experience refined.

Contributing

We welcome contributions to EIS Toolkit in various forms:

  • ✨ Developing new tools
  • 🐞 Fixing bugs in the code
  • 📝 Bug and other reporting
  • 💡 Feature suggestions

To contribute with code or documentation, you'll need a local development environment and a copy of the repository. Please refer to the For developers section below for detailed setup instructions. If you're interested in bug reporting or making feature suggestions, you can familiarize yourself with the toolkit and test it as described in the Usage section. When you encounter bugs or have ideas for new features, you can create an issue in this repository.

For developers

All contributing developers need Git and a copy of the repository.

git clone https://github.com/GispoCoding/eis_toolkit.git

After this you have three options for setting up your local development environment.

  1. Docker - instructions
  2. Poetry - instructions
  3. Conda - instructions

For general contributing guidelines, see CONTRIBUTING.

License

Licensed under the EUPL-1.2 or later.