Skip to content

Latest commit

 

History

History
131 lines (91 loc) · 4.62 KB

README.md

File metadata and controls

131 lines (91 loc) · 4.62 KB

GBFS-validator

All Contributors

A General Bikeshare Feed Specification dataset validator

Introduction

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.

interface

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.

Run the app

The validator is developed to be used “online” (hosted with a lambda function).

  1. Open https://gbfs-validator.mobilitydata.org
  2. Enter the feed’s auto-discovery URL
  3. If needed, select the version. If not specified, the validator will pick the version mentioned in the gbfs.json file
  4. Select file requirement options (free-floating or docked)
  5. Click the “Validate me !” button, and see the validation results below

Validation rules

The validation rules are listed in RULES.md Have a suggestion for a new rule? Open an issue!

Build the project: Web server install procedure

Required

To build the project locally, you need:

  • Node.js. Minimum Node.js version v14.x.x, or higher. Recommend Node.js version v18.x.x.
brew install node
npm install --global yarn
  • Ports 8080, 9000 and 9229 need to be free

Run dev environment

  • 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

Command line

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

Projects based on this validator

transport.data.gouv.fr GBFS validator tool - Tool displaying interactive geofencing, station, and vehicle maps, the validation results, and metadata of GBFS feeds.

Contributors

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.

⚠️ for contributions on schemas, please see Versions README

Acknowledgements

This project was originally created by Pierrick Paul (@PierrickP) at fluctuo - MobilityData started maintaining the project in September 2021.