A General Bikeshare Feed Specification dataset validator
The Canonical GBFS Validator is a tool to check the conformity of a GBFS feed against the official specification. It validates feeds up to GBFS version 3.0-RC2. This tool is built using the JSON Schemas, and the site is powered by Netlify.
The schemas in gbfs-validator/versions/schemas
is a git subtree of https://github.com/MobilityData/gbfs-json-schema. For more details, see gbfs-validator/versions/schemas/README.md
.
Questions? Please open an issue or reach out on the #gbfs channel on the MobilityData Slack.
The validator is developed to be used “online” (hosted with a lambda function).
- Open https://gbfs-validator.mobilitydata.org
- Enter the feed’s auto-discovery URL
- If needed, select the version. If not specified, the validator will pick the version mentioned in the
gbfs.json
file - Select file requirement options (free-floating or docked)
- Click the “Validate me !” button, and see the validation results below
The validation rules are listed in RULES.md Have a suggestion for a new rule? Open an issue!
To build the project locally, you need:
- Node.js. Minimum Node.js version
v14.x.x
, or higher. Recommend Node.js versionv18.x.x
.
brew install node
npm install --global yarn
- Ports 8080, 9000 and 9229 need to be free
- Download or clone the repository
git clone https://github.com/MobilityData/gbfs-validator.git
cd gbfs-validator
- Install the requirements
yarn
- Connect your local project to the
gbfs-validator
Netlify site to access its environment variables
netlify link
Select Enter the site name
and enter gbfs-validator
- Run dev environment locally
yarn run dev
- Open
localhost:8080
on your browser
The GBFS validator can be used as a Command Line Interface (CLI):
- Download or clone the repository
git clone https://github.com/MobilityData/gbfs-validator.git
cd gbfs-validator
- Execute the CLI script
node ./gbfs-validator/cli.js -u {http_address_of_gbfs_dataset} -s {local_path_to_output_report_file}
- To get the list of supported paramters
node ./gbfs-validator/cli.js --help
- Usage description and supported parameters
Usage: cli [OPTIONS]...
Options:
-v, --version output the version number
-u, --url <feed_url> URL of the GBFS feed
-vb, --verbose Verbose mode prints debugging console logs
-s, --save-report <report_path> Local path to output report file
-pr, --print-report <yes_no> Print report to standard output (choices: "yes", "no", default: "yes")
-h, --help display help for command
transport.data.gouv.fr GBFS validator tool - Tool displaying interactive geofencing, station, and vehicle maps, the validation results, and metadata of GBFS feeds.
This project follows the all-contributors specification, find the emoji key here. Contributions of any kind welcome! Please check out our Contribution guidelines for details.
This project was originally created by Pierrick Paul (@PierrickP) at fluctuo - MobilityData started maintaining the project in September 2021.