A validator and linter for Portolan catalogs.
HEALTH ? 92 / Healthy
// readme
rashid
rashid checks whether a Portolan catalog follows the specification.
Give it a catalog directory, its root catalog.json, or the URL of a published catalog. rashid checks the metadata, structure, asset bytes, and hosting. It reports each problem with a stable rule ID.
The name comes from the Arabic root ر ش د. Its participles رَاشِدٌ and رَشِيدٌ mean “taking, or following, a right way or course or direction”.
Install
uv tool install rashid
rashid requires Python 3.11 or later.
Check a Catalog
rashid check path/to/catalog
Exit code 0 means the catalog breaks no MUST requirement. Exit code 1 means it breaks at least one.
By default, rashid checks:
- Portolan metadata requirements.
- STAC 1.1.0 core structure with schemas included in the package.
- Local and remote asset bytes against their metadata and format rules.
Use --no-data when you only need a metadata and structure result. Use --data-scope local to keep byte checks inside the catalog directory.
rashid check path/to/catalog --data-scope local