bids-validator
Validator for the Brain Imaging Data Structure
What it is and what it does
BIDS-Validator is a tool that checks whether brain imaging datasets conform to the Brain Imaging Data Structure specification. It works across multiple interfaces—web browser, command line, Docker, and as a Python library—making it accessible to researchers with different workflows. The Python library provides programmatic access to validation checks, allowing you to integrate BIDS compliance testing into data processing pipelines or quality-control scripts.
The validator examines file organization, naming conventions, metadata in JSON sidecars, and data format integrity (NIfTI headers, TSV structure, JSON syntax). It supports configuration via `.bidsignore` files and JSON config files to customize which issues are ignored, warned about, or treated as errors. The package depends on bidsschematools to enforce the current BIDS specification rules.
Use it for:
- Validate a neuroimaging dataset before uploading to a data repository or sharing with collaborators.
- Integrate BIDS validation into a data acquisition pipeline to catch formatting errors immediately after scanning.
- Check individual files or entire directories programmatically within a Python-based data processing workflow.
- Configure dataset-specific validation rules by adding a `.bids-validator-config.json` file to customize error severity.
- Validate datasets in automated CI/CD workflows to ensure BIDS compliance before archival or publication.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Validates that brain imaging datasets conform to the BIDS (Brain Imaging Data Structure) specification, checking file organization, naming, metadata, and format compliance.
Yes. BIDS-Validator is actively maintained, has no known vulnerabilities, installs with minimal friction, and is the standard tool for ensuring neuroimaging datasets meet BIDS specification requirements. It is essential for researchers working with brain imaging data who need to validate compliance programmatically or before sharing datasets.
Install
bids-validator on PyPI
pip
pip install bids-validatoruv
uv add bids-validatorpoetry
poetry add bids-validatorInstalling bids-validator
Before you install
Low friction install with a single runtime dependency (bidsschematools). The package is actively maintained with a recent release and no known vulnerabilities, making it straightforward to add to a Python environment.
License in practice
MIT License permits free use, modification, and distribution with minimal restrictions, making it suitable for both academic and commercial neuroimaging workflows without licensing concerns.
Quickstart
pip install bids-validator
from bids_validator import BIDSValidator
validator = BIDSValidator()
validator.is_bids('/relative/path/to/a/bids/file')
File path must be relative to the root of the BIDS dataset and must include a leading forward slash.
Verify before relying
- Whether the Python library supports all validation features available in the command-line and web versions, or if some checks are CLI/browser-only.
- Performance characteristics when validating large datasets (thousands of files or multi-gigabyte sizes).
- Whether custom validation rules beyond the standard BIDS specification can be enforced programmatically.
Package facts
| License | MIT License (permissive) |
| Python support | supports the current Python release (>=3.8) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — bidsschematools |
| Maintenance | actively maintained — 738 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 117,286/month — #12,171 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: bids_validator-1.14.7.post0-py3-none-any.whl
Tags
More Scientific/Engineering packages
NumPy provides an N-dimensional array object…
permissive · top 100 on PyPI
pandaspandas provides fast, flexible data structures…
permissive · top 100 on PyPI
scipyscipy provides numerical algorithms for…
permissive · top 100 on PyPI
scikit-learnscikit-learn provides a comprehensive Python…
permissive · top 1,000 on PyPI
dilldill extends Python's pickle module to…
permissive · top 1,000 on PyPI
multiprocessMultiprocess is an enhanced fork of Python's…
permissive · top 1,000 on PyPI
pybidsPyBIDS provides a Python interface to query,…
permissive · top 15,000 on PyPI
bidsschematoolsParse, validate, and export the Brain Imaging…
permissive · top 15,000 on PyPI
mne-bidsMNE-BIDS reads and writes neuroimaging datasets…
permissive · top 15,000 on PyPI
pyx12Pyx12 parses, validates, and converts ANSI X12…
permissive · top 15,000 on PyPI
nilearnNilearn provides statistical and…
permissive · top 15,000 on PyPI
emrvalidatorEMRValidator is a data validation library…
permissive · top 15,000 on PyPI
fiftyone-brainFiftyOne Brain provides AI/ML capabilities for…
permissive · top 15,000 on PyPI
eidoValidates project metadata against PEP schemas…
permissive · top 15,000 on PyPI
kubernetes-validateValidates Kubernetes resource definitions…
permissive · top 15,000 on PyPI
pycsvschemaValidates CSV files against a schema…
permissive · top 15,000 on PyPI