Resto
A metadata catalog and search engine for geospatialized data
Install / Use
/learn @jjrom/RestoREADME
About
resto is a STAC catalog and a search engine dedicated to geospatialized data. Originally, it’s main purpose it to handle Earth Observation satellite imagery but it can be used to store any kind of metadata localized in time and space.
resto search API conforms to the SpatioTemporal Asset Catalog (STAC) specification v1.1.0
Installation
TL;DR
The INSTALLATION.md file provides additional information on the installation process.
Deploy the service
To launch a default pre-configured resto instance, just type :
./deploy
This will build locally the jjrom/resto image and launch a resto container exposing the resto API service at http://localhost:5252
To launch a default develop resto instance (i.e. with RESTO_DEBUG set to true and all database logs), just type :
./deploy -e config-dev.env
To launch a default develop resto instance using a connection pooling, just type :
./deploy -e config-dev-pgbouncer.env
[IMPORTANT] Docker on Mac M1
If you're using docker on Mac with apple Silicon M1 chip, be sure to turn off "Use Rosetta for x86/amd64 emulation on Apple Silicon" in Docker Desktop > Settings > General.
When this option is turned on, every calls to PHP preg_match function (which is used by resto) leads to a segmentation fault within php fpm and an HTTP 502 Bad Gateway error in nginx. Why ? I just don't know !
Users, groups and rights
Collection and catalogs
See COLLECTIONS_CATALOGS_ITEMS.md
References
Here are some projects that use resto.
- European Digital Twin of the Ocean
- CREODIAS
- The French Sentinel Data Processing center
- The French Space Agency, THEIA land data center
- The Polish EO Data finder
- Remote Sensor Technology Center of Japan, EPIC project
- Sentinel Australia Regional Access
- ESA's Food Security Thematic Exploitation Platform
- ESA's Forestry Thematic Exploitation Platform
- CNES Kalideos platform
- CEOS Recovery Observatory
- EO4SD Lab - Earth observation for sustainable development
- IRSTEA Thisme project - THeia and Irstea Soil MoisturE catalog
If you plan to use resto and would like to have your project added to this list, feel free to contact support
Debug
In order to attach a debugger, you need to have xdebug enabled in resto:
./deploy -e config-dev.env
You can check http://localhost:5252/_debug to see if everything is activated.
You then have to install everything on your IDE (VSCode, Nvim, ...) don't forget to add the pathMappings so your filePath matches the ones in the docker.
For a nvim (and vscode) configuration see here: https://gitlab.com/mbitard/nvim-config/-/blob/main/lua/plugins/php-dap.lua?ref_type=heads#L22
Related Skills
node-connect
346.8kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
107.6kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
346.8kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
346.8kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
