{"id":13341423,"url":"https://github.com/CityOfBoston/pa11y-api","last_synced_at":"2025-03-11T21:30:58.658Z","repository":{"id":70818299,"uuid":"54579988","full_name":"CityOfBoston/pa11y-api","owner":"CityOfBoston","description":null,"archived":false,"fork":false,"pushed_at":"2016-03-23T17:32:09.000Z","size":155,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":20,"default_branch":"master","last_synced_at":"2024-10-24T08:30:23.270Z","etag":null,"topics":["accessibility","boston","city","city-government","civic-tech","css","doit-boston","gov","government","grunt","javascript","mongodb","nodejs","open-source","pa11y","pa11y-api","phantomjs","smart-cities","web-accessibility","webservice-client"],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/CityOfBoston.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","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":"2016-03-23T17:31:42.000Z","updated_at":"2023-07-18T09:07:22.000Z","dependencies_parsed_at":"2023-07-11T04:15:56.459Z","dependency_job_id":null,"html_url":"https://github.com/CityOfBoston/pa11y-api","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CityOfBoston%2Fpa11y-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CityOfBoston%2Fpa11y-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CityOfBoston%2Fpa11y-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CityOfBoston%2Fpa11y-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/CityOfBoston","download_url":"https://codeload.github.com/CityOfBoston/pa11y-api/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243115326,"owners_count":20238741,"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":["accessibility","boston","city","city-government","civic-tech","css","doit-boston","gov","government","grunt","javascript","mongodb","nodejs","open-source","pa11y","pa11y-api","phantomjs","smart-cities","web-accessibility","webservice-client"],"created_at":"2024-07-29T19:25:26.023Z","updated_at":"2025-03-11T21:30:58.649Z","avatar_url":"https://github.com/CityOfBoston.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\npa11y-webservice\n================\n\npa11y-webservice provides scheduled accessibility reports for multiple URLs. It runs [pa11y][pa11y] on a list of URLs, which you can update and query the results of via a JSON web-service.\n\n**Current Version:** *1.6.4*  \n**Build Status:** [![Build Status][travis-img]][travis]  \n**Node Version Support:** *0.12*\n\n\nSetup\n-----\n\npa11y-webservice requires [Node.js][node] 0.12+ and [PhantomJS][phantom]. See the [pa11y documentation][pa11y-docs] for more information on these dependencies. pa11y-webservice also requires [MongoDB][mongo] to be installed and running.\n\nYou'll then need to clone this repo locally and install dependencies with `npm install`. Once you have a local clone, you'll need to copy some sample configuration files in order to run the application. From within the repo, run the following commands:\n\n```sh\n$ cp config/development.sample.json config/development.json\n$ cp config/production.sample.json config/production.json\n$ cp config/test.sample.json config/test.json\n```\n\nEach of these files defines configurations for a different environment. If you're just running the application locally, then you should be OK with just development and test configurations. The [available configurations are documented here](#configurations).\n\nNow that you've got your application configured, you can run in each mode with the following commands:\n\n```sh\n$ NODE_ENV=production node index.js   # Run in production\n$ NODE_ENV=development node index.js  # Run in development\n$ NODE_ENV=test node index.js         # Run in test\n```\n\nSee [development instructions](#development) for more information about running locally (and restarting automatically when files change).\n\n\nDocumentation\n-------------\n\nThe web-service which pa11y-webservice exposes is documented in the wiki:\n\n- [Web-Service endpoints][wiki-web-service]\n- [Resource types][wiki-resources]\n\n\nClient Libraries\n----------------\n\n- Node.js client library: [pa11y-webservice-client-node][pa11y-webservice-client-node]\n\n\nConfigurations\n--------------\n\nThe boot configurations for pa11y-webservice are as follows. Look at the sample JSON files in the repo for example usage.\n\n### database\n*(string)* The mongodb [connection string][mongo-connection-string] for your database.\n\n### host\n*(string)* The host to run the application on. This is normally best left as `\"0.0.0.0\"` – which means the application will run on any incoming connections.\n\n### port\n*(number)* The port to run the application on.\n\n### cron\n*(string)* A crontab which describes when to generate reports for each task in the application.\n\n\nDevelopment\n-----------\n\nTo develop pa11y-webservice, you'll need to clone the repo and get set up as outlined in the [setup guide](#setup). You'll also need [Grunt][grunt] to be installed globally in order to run tests, you can do this with `npm install -g grunt-cli`.\n\nOnce you've done this, you'll need to start the application in test mode with:\n\n```sh\n$ grunt start-test\n```\n\nNow you'll be able to run the following commands:\n\n```sh\n$ grunt             # Run the lint and test tasks together\n$ grunt lint        # Run JSHint with the correct config\n$ grunt start       # Run app in development mode, restarting if files change\n$ grunt start-test  # Run app in test mode, restarting if files change\n$ grunt test   # Run functional tests\n```\n\nCode with lint errors or failing tests will not be accepted, please use the build tools outlined above.\n\nFor users with push-access, don't commit to the master branch. Code should be in `develop` until it's ready to be released.\n\n\nFixtures\n--------\n\nFor demoing pa11y-webservice, you can insert some example tasks and results by running the following command:\n\n```sh\n$ grunt fixture:dev\n```\n\n\nLicense\n-------\n\n[Copyright 2013 Springer Nature](LICENSE.txt).  \npa11y-webservice is licensed under the [GNU General Public License 3.0][gpl].\n\n\n\n[brew]: http://mxcl.github.com/homebrew/\n[gpl]: http://www.gnu.org/licenses/gpl-3.0.html\n[grunt]: http://gruntjs.com/\n[mongo]: http://www.mongodb.org/\n[mongo-connection-string]: http://docs.mongodb.org/manual/reference/connection-string/\n[node]: http://nodejs.org/\n[pa11y]: https://github.com/springernature/pa11y\n[pa11y-docs]: https://github.com/springernature/pa11y#installing\n[pa11y-webservice-client-node]: https://github.com/springernature/pa11y-webservice-client-node\n[phantom]: http://phantomjs.org/\n[travis]: https://travis-ci.org/springernature/pa11y-webservice\n[travis-img]: https://travis-ci.org/springernature/pa11y-webservice.png?branch=master\n[wiki-web-service]: https://github.com/springernature/pa11y-webservice/wiki/Web-Service-Endpoints\n[wiki-resources]: https://github.com/springernature/pa11y-webservice/wiki/Resource-Types\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FCityOfBoston%2Fpa11y-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FCityOfBoston%2Fpa11y-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FCityOfBoston%2Fpa11y-api/lists"}