{"id":23009873,"url":"https://github.com/openactive/rpde-validator","last_synced_at":"2025-07-14T13:11:55.822Z","repository":{"id":52683309,"uuid":"144873288","full_name":"openactive/rpde-validator","owner":"openactive","description":"RPDE Validator library, used as a component of validator.openactive.io","archived":false,"fork":false,"pushed_at":"2024-09-09T13:35:01.000Z","size":213,"stargazers_count":0,"open_issues_count":6,"forks_count":0,"subscribers_count":9,"default_branch":"master","last_synced_at":"2024-09-09T16:24:34.425Z","etag":null,"topics":["rpde","validators"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/openactive.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-08-15T15:52:01.000Z","updated_at":"2024-09-09T13:35:04.000Z","dependencies_parsed_at":"2024-09-09T16:17:59.465Z","dependency_job_id":null,"html_url":"https://github.com/openactive/rpde-validator","commit_stats":{"total_commits":75,"total_committers":4,"mean_commits":18.75,"dds":0.5333333333333333,"last_synced_commit":"0229cd710f3862654aac142023654f0cb72656c7"},"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openactive%2Frpde-validator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openactive%2Frpde-validator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openactive%2Frpde-validator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openactive%2Frpde-validator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/openactive","download_url":"https://codeload.github.com/openactive/rpde-validator/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":229800368,"owners_count":18126028,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["rpde","validators"],"created_at":"2024-12-15T09:16:18.755Z","updated_at":"2024-12-15T09:16:19.517Z","avatar_url":"https://github.com/openactive.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# RPDE Validator\n\nThe OpenActive RPDE validator library.\n\n[![Tests](https://github.com/openactive/rpde-validator/actions/workflows/node.js.yml/badge.svg?branch=master)](https://github.com/openactive/rpde-validator/actions/workflows/node.js.yml)\n[![Known Vulnerabilities](https://snyk.io/test/github/openactive/rpde-validator/badge.svg)](https://snyk.io/test/github/openactive/rpde-validator)\n\n## Introduction\n\nThis library allows developers to validate RPDE feeds against the latest [Realtime Paged Data Exchange](https://www.openactive.io/realtime-paged-data-exchange/) specification.\n\n## Using in your application\n\nThis library can be used in your own application, perhaps as part of your CI pipeline.\n\n### Install\n\n```shell\n$ npm install @openactive/rpde-validator\n```\n\n### Usage\n\n```js\nconst { RpdeValidator } = require('@openactive/rpde-validator');\n\nRpdeValidator(\n  url, // The URL of the feed to test\n  {\n    // A callback that is called for log messages\n    // Will be provided with an object that looks like:\n    // {\n    //   verbosity: 1, // 1-3 (higher is more verbose)\n    //   percentage: 50, // The percentage complete\n    //   message: '...', // String log message\n    // }\n    logCallback: (log) =\u003e {\n      console.log(log.message);\n    },\n    // User agent used by the validator\n    // Default: \"RPDE_Validator/version (+https://validator.openactive.io/rpde)\"\n    userAgent: null, \n    // The time in between requests in a feed in milliseconds\n    // Default: 0\n    requestDelayMs: 1000,\n    // The timeout in which to give up on requesting a feed URL\n    // Must be non-zero\n    // Default: 10000\n    timeoutMs: 10000,\n    // The number of feed pages to walk through\n    // Must be non-zero\n    // Default: 20\n    pageLimit: 10,\n  }\n);\n```\n\n## Development\n\n### Getting started\n\n```shell\n$ git clone git@github.com:openactive/rpde-validator.git\n$ cd rpde-validator\n$ npm install\n```\n### Running tests\n\nThis project uses [Jasmine](https://jasmine.github.io/) for its tests. All spec files are located alongside the files that they target.\n\nTo run tests locally, run:\n\n```shell\n$ npm test\n```\n\nThe test run will also include a run of [eslint](https://eslint.org/). To run the tests without these, use:\n\n```shell\n$ npm run test-no-lint\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenactive%2Frpde-validator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenactive%2Frpde-validator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenactive%2Frpde-validator/lists"}