This repository contains the BBMRI-ERIC Directory data-quality checker and a collection of exporters, reports, map generators, maintenance tools, analyses, and reusable Python libraries built around the Directory.
The original and primary entry point is the data-quality checker:
python3 data-check.pypip3 install -r requirements.txt
python3 data-check.pyFor authentication, cache behavior, Python compatibility, and common command line options, see Setup and common operation.
| Family | Main entry points | Documentation |
|---|---|---|
| Data quality | data-check.py, checks/, qcheck-updater.py |
Data quality |
| Exports and reports | exporter-*.py |
Exporters |
| Maps and geospatial output | geocoding_2022.py, R-maps/ |
Maps |
| Data maintenance and synchronization | directory-tables-modifier.py, updater/importer/sync tools |
Maintenance tools |
| Auxiliary analyses and utilities | survey-so2-directory.py, search, statistics, conversion helpers |
Auxiliary tools |
| Reusable Python modules | directory.py and focused helper modules |
Libraries |
Run the default quality checks and write an XLSX report:
python3 data-check.py -X results.xlsxExport the main Directory entities:
python3 exporter-all.py -X directory.xlsxGenerate the GeoJSON used by the map framework:
python3 geocoding_2022.py geocoding.config -o bbmri-directory-geojsonEvery CLI provides its authoritative option list through -h or --help.
docs/is user-facing documentation: installation, commands, inputs, outputs, examples, and operational safety warnings.- DEVELOPMENT.md contains architecture and detailed functionality specifications for maintainers.
- AGENTS.md contains concise, non-negotiable implementation guardrails derived from those specifications.
- R-maps/README.md contains the detailed R map workflow.
User documentation explains how to operate the current implementation. It is not the canonical location for internal behavioral contracts.
Install test dependencies and run the suite:
pip3 install -r requirements-test.txt
pytest -qSee DEVELOPMENT.md for architecture, module boundaries, testing expectations, and functionality specifications.