EODAG

Gives you an easy way to access products from more than 10 earth observation providers, with more than 50 different product types (Sentinel 1, Sentinel 2, Sentinel 3, Landsat, etc.) that can be searched and downloaded.
https://github.com/cs-si/eodag

Category: Sustainable Development
Sub Category: Data Catalogs and Interfaces

Keywords

catalog cbers copernicus downloader earth-observation eodag geographic-data geospatial gis landsat modis remote-sensing satellite-imagery search sentinel spatial-imagery stac

Keywords from Contributors

scihub geospatial-data jupyterlab ogc ogcapi ows labextension gdal geotools closember

Last synced: about 14 hours ago
JSON representation

Repository metadata

Earth Observation Data Access Gateway

README.rst

          .. image:: https://eodag.readthedocs.io/en/latest/_static/eodag_bycs.png
    :target: https://github.com/CS-SI/eodag

|

.. |pypi-badge| image:: https://badge.fury.io/py/eodag.svg
    :target: https://badge.fury.io/py/eodag

.. |conda-badge| image:: https://img.shields.io/conda/vn/conda-forge/eodag
    :target: https://anaconda.org/conda-forge/eodag

.. |rtd-badge| image:: https://readthedocs.org/projects/eodag/badge/?version=latest&style=flat
    :target: https://eodag.readthedocs.io/en/latest/

.. |gha-badge| image:: https://github.com/CS-SI/eodag/actions/workflows/test.yml/badge.svg
    :target: https://github.com/CS-SI/eodag/actions

.. |ghi-badge| image:: https://img.shields.io/github/issues/CS-SI/eodag.svg
    :target: https://github.com/CS-SI/eodag/issues

.. |binder-badge| image:: https://mybinder.org/badge_logo.svg
    :target: https://mybinder.org/v2/git/https%3A%2F%2Fgithub.com%2FCS-SI%2Feodag.git/master?filepath=docs%2Fnotebooks%2Fintro_notebooks.ipynb

|pypi-badge| |conda-badge| |rtd-badge| |gha-badge| |ghi-badge| |binder-badge|

.. |license-badge| image:: https://img.shields.io/pypi/l/eodag.svg
    :target: https://pypi.org/project/eodag/

.. |versions-badge| image:: https://img.shields.io/pypi/pyversions/eodag.svg
    :target: https://pypi.org/project/eodag/

|license-badge| |versions-badge|

|

..

    Checkout **EODAG Jupyterlab extension**: `eodag-labextension `_!
    This will bring a friendly UI to your notebook and help you search and browse for EO products using ``eodag``.

EODAG (Earth Observation Data Access Gateway) is a command line tool and a plugin-oriented Python framework for searching,
aggregating results and downloading remote sensed images while offering a unified API for data access regardless of the
data provider. The EODAG SDK is structured around three functions:

* List collections: list of supported products and their description

* Search products (by collection or uid): searches products according to the search criteria provided

* Download products: download product “as is"

EODAG is developed in Python. It is structured according to a modular plugin architecture, easily extensible and able to
integrate new data providers. Three types of plugins compose the tool:

* Catalog search plugins, responsible for searching data (STAC, OpenSearch, OData, ...), building paths, retrieving quicklook,
  combining results

* Download plugins, allowing to download and retrieve data locally (via HTTP, S3, ...), always with the same directory
  organization

* Authentication plugins, which are used to authenticate the user on the external services used (JSON Token, Basic Auth, OIDC, ...).

Read `the documentation `_ for more insights.

.. image:: https://raw.githubusercontent.com/CS-SI/eodag/develop/docs/_static/eodag_overview.png
   :alt: EODAG overview
   :class: no-scaled-link

Installation
============

EODAG is available on `PyPI `_:

.. code-block:: bash

   python -m pip install eodag

And with ``conda`` from the `conda-forge channel `_:

.. code-block:: bash

   conda install -c conda-forge eodag

..

  [!IMPORTANT]

  `Breaking change `_ **in v3.0.0**:
  Please note that EODAG
  comes with a minimal set of dependencies. If you want more features, please install using one of the
  `available extras `_.

Usage
=====

For downloading you will need to fill your credentials for the desired providers in your
`eodag user configuration file `_.
The file will automatically be created with empty values on the first run.

Python API
----------

Example usage for interacting with the api in your Python code:

.. code-block:: python

    from eodag import EODataAccessGateway

    dag = EODataAccessGateway()

    search_results = dag.search(
        collection='S2_MSI_L1C',
        geom={'lonmin': 1, 'latmin': 43.5, 'lonmax': 2, 'latmax': 44}, # accepts WKT polygons, shapely.geometry, ...
        start='2021-01-01',
        end='2021-01-15'
    )

    product_paths = dag.download_all(search_results)


This will search for Sentinel 2 level-1C products on the default provider and return the found products first page and
an estimated total number of products matching the search criteria. And then it will download these products. Please
check the `Python API User Guide `_ for more details.

..

  [!IMPORTANT]

  `Breaking change `_ **in v3.0.0**:
  `search() `_ method now returns
  only a single ``SearchResult`` instead of a 2 values tuple.


Command line interface
----------------------

Start playing with the CLI:

- To search for some products::

     eodag search --collection S2_MSI_L1C --box 1 43 2 44 --start 2021-03-01 --end 2021-03-31

  The request above searches for ``S2_MSI_L1C`` collections in a given bounding box, in March 2021. It saves the results in a GeoJSON file (``search_results.geojson`` by default).

  Results are paginated, you may want to get all pages at once with ``--all``, or search products having 20% of maximum coud cover with ``--cloudCover 20``. For more information on available options::

     eodag search --help

- To download the result of the previous call to search::

     eodag download --search-results search_results.geojson

- To download only the result quicklooks of the previous call to search::

     eodag download --quicklooks --search-results search_results.geojson

- To list all available collections and supported providers::

     eodag list

- To list available collections on a specified supported provider::

     eodag list -p creodias

- To see all the available options and commands::

     eodag --help

- To print log messages, add ``-v`` to eodag master command. e.g. ``eodag -v list``. The more ``v`` given (up to 3), the more verbose the tool is. For a full verbose output, do for example: ``eodag -vvv list``

Contribute
==========

Have you spotted a typo in our documentation? Have you observed a bug while running EODAG?
Do you have a suggestion for a new feature?

Don't hesitate and open an issue or submit a pull request, contributions are most welcome!

For guidance on setting up a development environment and how to make a
contribution to eodag, see the `contributing guidelines`_.

.. _contributing guidelines: https://github.com/CS-SI/eodag/blob/develop/CONTRIBUTING.rst


License
=======

EODAG is licensed under Apache License v2.0.
See LICENSE file for details.


Authors
=======

EODAG has been created by `CS GROUP - France `_.


Credits
=======

EODAG is built on top of amazingly useful open source projects. See NOTICE file for details about those projects and
their licenses.
Thank you to all the authors of these projects!

        

Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 17 days ago

Total Commits: 1,673
Total Committers: 42
Avg Commits per committer: 39.833
Development Distribution Score (DDS): 0.555

Commits in past year: 323
Committers in past year: 18
Avg Commits per committer in past year: 17.944
Development Distribution Score (DDS) in past year: 0.628

Name Email Commits
Sylvain Brunato 6****o 744
Adrien Oyono a****o@g****m 162
github-actions[bot] 4****] 156
Adrien Oyono a****o@c****r 110
Julia Lahovnik 1****k 79
Maxime Liquet 3****t 60
Adrien Oyono e****e@y****r 44
anesson-cs 1****s 41
Aubin Lambaré a****e@c****u 39
orhygine a****s@g****m 38
dalpasso 1****o 30
alambare-csgroup 9****p 27
Timothey Larrouy t****y@c****m 21
Clément Cazorla c****a@c****r 18
CGuichard 3****d 17
cauriol c****l@c****m 17
bjgiraudon 6****n 14
amarandon 1****n 13
Guillermo Tesoro Calvo r****m@g****m 7
Diwakar Kushwaha d****k@g****m 4
Julien Gaucher 1****s 3
RitejAyed r****1@g****m 3
BRUNATO Sylvain s****o@c****u 3
Meylheuc b****c@c****r 3
Alvaro Huarte a****7@y****s 2
Stéphan AIME s****e@c****r 2
tromain 7****n 1
GIRAUDON Benjamin b****n@c****m 1
gasparakos g****s@g****m 1
dependabot[bot] 4****] 1
and 12 more...

Committer domains:


Issue and Pull Request metadata

Last synced: 7 days ago

Total issues: 370
Total pull requests: 1,359
Average time to close issues: 6 months
Average time to close pull requests: 13 days
Total issue authors: 74
Total pull request authors: 27
Average comments per issue: 0.76
Average comments per pull request: 2.16
Merged pull request: 1,039
Bot issues: 1
Bot pull requests: 320

Past year issues: 99
Past year pull requests: 481
Past year average time to close issues: about 1 month
Past year average time to close pull requests: 5 days
Past year issue authors: 28
Past year pull request authors: 17
Past year average comments per issue: 0.4
Past year average comments per pull request: 1.85
Past year merged pull request: 314
Past year bot issues: 0
Past year bot pull requests: 143

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/cs-si/eodag

Top Issue Authors

  • sbrunato (185)
  • anesson-cs (21)
  • amarandon (18)
  • alambare-csgroup (17)
  • jlahovnik (9)
  • alambare (9)
  • maximlt (6)
  • floriandeboissieu (6)
  • remi-braun (5)
  • andretheronsa (5)
  • LucHermitte (3)
  • iliion (3)
  • savmickael (3)
  • koleckt (3)
  • varisht-tathya (3)

Top Pull Request Authors

  • sbrunato (500)
  • github-actions[bot] (318)
  • jlahovnik (142)
  • alambare (90)
  • anesson-cs (62)
  • dalpasso (48)
  • alambare-csgroup (37)
  • cauriol (31)
  • amarandon (26)
  • timothey-cs (26)
  • bjgiraudon (23)
  • gtesoro (13)
  • diwakark89 (11)
  • RitejAyed (6)
  • jgaucher-cs (6)

Top Issue Labels

  • enhancement (182)
  • bug (138)
  • dedl (32)
  • server (26)
  • provider (23)
  • documentation (19)
  • priority::1 (3)
  • pending (3)
  • tests (3)
  • refactoring (3)
  • style (2)
  • priority::0 (1)
  • duplicate (1)
  • cli (1)
  • stale (1)
  • automated pr (1)

Top Pull Request Labels

  • automated pr (318)
  • dedl (77)
  • bug (28)
  • server (12)
  • pending (11)
  • enhancement (8)
  • provider (2)
  • dependencies (2)
  • github_actions (2)

Package metadata

pypi.org: eodag

Earth Observation Data Access Gateway

  • Homepage: https://github.com/CS-SI/eodag
  • Documentation: https://eodag.readthedocs.io
  • Licenses: Apache 2.0
  • Latest release: 3.10.1 (published 14 days ago)
  • Last Synced: 2025-12-18T18:07:39.942Z (7 days ago)
  • Versions: 103
  • Dependent Packages: 6
  • Dependent Repositories: 8
  • Downloads: 16,734 Last month
  • Rankings:
    • Dependent packages count: 1.4%
    • Stargazers count: 3.886%
    • Average: 4.246%
    • Downloads: 4.41%
    • Dependent repos count: 5.156%
    • Forks count: 6.378%
  • Maintainers (3)
proxy.golang.org: github.com/cs-si/eodag

  • Homepage:
  • Documentation: https://pkg.go.dev/github.com/cs-si/eodag#section-documentation
  • Licenses: apache-2.0
  • Latest release: v3.10.1+incompatible (published 14 days ago)
  • Last Synced: 2025-12-18T18:07:40.393Z (7 days ago)
  • Versions: 84
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent packages count: 5.464%
    • Average: 5.647%
    • Dependent repos count: 5.83%
proxy.golang.org: github.com/CS-SI/eodag

  • Homepage:
  • Documentation: https://pkg.go.dev/github.com/CS-SI/eodag#section-documentation
  • Licenses: apache-2.0
  • Latest release: v3.10.1+incompatible (published 14 days ago)
  • Last Synced: 2025-12-18T18:07:44.356Z (7 days ago)
  • Versions: 84
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent packages count: 5.464%
    • Average: 5.647%
    • Dependent repos count: 5.83%
conda-forge.org: eodag

EODAG (Earth Observation Data Access Gateway) is a command line tool and a plugin-oriented Python framework for searching, aggregating results and downloading remote sensed images while offering a unified API for data access regardless of the data provider.

  • Homepage: https://github.com/CS-SI/eodag
  • Licenses: Apache-2.0
  • Latest release: 2.6.2 (published about 3 years ago)
  • Last Synced: 2025-12-18T18:07:39.543Z (7 days ago)
  • Versions: 14
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Rankings:
    • Dependent repos count: 24.412%
    • Stargazers count: 25.201%
    • Forks count: 32.472%
    • Average: 33.422%
    • Dependent packages count: 51.604%

Dependencies

.github/workflows/deploy.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
  • pypa/gh-action-pypi-publish release/v1 composite
.github/workflows/fetch.yml actions
  • actions/cache v3 composite
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
  • peter-evans/create-pull-request v4 composite
.github/workflows/test.yml actions
  • 5monkeys/cobertura-action master composite
  • EnricoMi/publish-unit-test-result-action v2 composite
  • actions/cache v3 composite
  • actions/checkout v3 composite
  • actions/download-artifact v3 composite
  • actions/setup-python v4 composite
  • actions/upload-artifact v3 composite
  • pre-commit/action v3.0.0 composite
docker-compose.yml docker
pyproject.toml pypi
requirements-dev.txt pypi
  • python-dateutil <3.0.0,>=2.1 development
requirements-docs.txt pypi
  • nbconvert >6.3.0
requirements-tutorials.txt pypi
  • xarray >=0.10
requirements.txt pypi
setup.py pypi

Score: 19.811331761049697