Skip to main content

Automated Accessibility Testing Tool

Project description



Website Website Build License

Automated Accessibility Testing Tool

Crest quickly tests any HTML web page for a simple way to solve your accessibility testing problems. Provide a website URL to our callable API and expose potential WCAG violations.

Currently supports:

  • Keyboard Focus Indicator
  • Closed Captioning and Transcript
  • Heading Analysis

Table of contents

Getting Started

To get you started quickly let’s dive into the necessary steps needed to set up the environment.

To use Crest as a Python Library

Using Pip
  1. Install Crest using python package manager (Make sure pip is installed in your system).
pip install crest

To use Crest as a Service

Using Conda
  1. Download and Install Miniconda from conda.io

  2. For Windows, launch Miniconda prompt shell. For MacOS, launch the terminal.

  3. Clone the Crest repository. More details can be found at docs.github.com

  4. Go to "crest" folder in your terminal/prompt shell. Run command.

conda env create -f environment.yml
conda activate crest
  1. Install chromedriver. The details can be found in chromium.org.

  2. Download and Install google-chrome-stable from ubuntuupdates.org.

  3. Once all the required libraries are installed, go to 'src/crest' folder and run the below command in your terminal/prompt shell.

FLASK_APP=server.py FLASK_ENV=development flask run --port 3000
Using Docker
  1. Clone the repository. More details can be found at docs.github.com.

  2. Download and Install docker from docker.com. Note: Make sure your docker server as well as crest image is running.

  3. Go to "crest" folder in your terminal/prompt shell. Run command.

docker build -t crest .
  1. Once the docker image is created, run it by executing the following command.
docker container run --name crest_container -p 3000:3000 crest 

Note: A machine learning model will be downloaded from huggingface.co when you use the Heading Analysis/ Crest Single API for the first time. It will be saved in your system's cache for future use and could take approximately 2 GB of your system's memory.

Fine-tune Machine Learning Model

Train the machine learning model to a specific domain:

  1. Prepare a labelled dataset in the below format.
URL Title Description Result
http://gov.uk Tell us whether you accept cookies We use cookies to collect information about how you use GOV.UK. We use this... True
  1. Change the dataset directory path i.e. ['model_params']['training_data_input_file_name'] in the config.py file.
  2. Run a python script placed in the src/crest/utils/ directory by executing the following command:
    python train_model.py

Note: Install Apex if you are using fp16 training. Please follow the instructions in github.com/NVIDIA/apex. (Installing Apex from pip has caused issues for several people.)

Support

Crest is released as open source software and comes with no commercial support.
But since we want to ensure success and recognize that Crest consumers might fall into a range of roles - from developers that are steeped in the conventions of open-source to customers that are more accustomed to commercial offerings, we offer several methods of engaging with the Crest team and community.
For the Crest community, feel free to join our Slack channel

Contributors


Sheri Byrne Haber

💻

Amit Garg

💻

Joyce Oshita

💻

Contributing

The Crest project team welcomes contributions from the community. If you wish to contribute code, please look at our CONTRIBUTING.md file.

License

Crest is comprised of many open source software components, each of which has its own license that is located in the source code of the respective component as well as documented in the open source license file accompanying the Crest distribution.


The Crest team is inspired to make the web accessible to all. Join us to make it happen!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pythoncrest-1.0.0.tar.gz (92.5 kB view details)

Uploaded Source

Built Distribution

pythoncrest-1.0.0-py3-none-any.whl (138.9 kB view details)

Uploaded Python 3

File details

Details for the file pythoncrest-1.0.0.tar.gz.

File metadata

  • Download URL: pythoncrest-1.0.0.tar.gz
  • Upload date:
  • Size: 92.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.9.2

File hashes

Hashes for pythoncrest-1.0.0.tar.gz
Algorithm Hash digest
SHA256 b28832f745028b917babb5f5b3c803cca968d144636a1f46b93a5cf60ecd683e
MD5 6cf634549138f52088b7d87bf5168aeb
BLAKE2b-256 3a23b4914a3039ebaf14698e7f3c5aab6750c3b21cec5a8cb3b29353fbe3f129

See more details on using hashes here.

File details

Details for the file pythoncrest-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: pythoncrest-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 138.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.9.2

File hashes

Hashes for pythoncrest-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0adfce355ac66fa6aad62f9391c6776da754704c3e0e5984f2532f404a4f515d
MD5 5b4c0bbec28c93dc124b4fcb9576a9b2
BLAKE2b-256 02b07ddbc4aa7ddece6e70f35a12c8586cbbc2bcb38d0d48260bc4834f478fd0

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page