User Interface Options Plus (UIO+) allows you to customize websites to match your own personal needs and preferences.

Usage no npm install needed!

<script type="module">
  import uioPlus from 'https://cdn.skypack.dev/uio-plus';


UI Options Plus (UIO+)

CI build status badge

User Interface Options Plus (UIO+) allows you to customize websites to match your own personal needs and preferences. Settings for the adaptations can be set via the UIO+ adjuster panel.

The following adaptations are supported:

  • Character Space
  • Contrast
  • Enhance Inputs
  • Line Space
  • Reading Mode
  • Right-Click to Select
  • Selection Highlight
  • Syllables
  • Table of Contents
  • Text-to-Speech (only for selected text)
  • Word Space
  • Zoom

Note: The ability to apply an adaptation will vary from page to page

UI Options Plus is the result of a joint effort of the Inclusive Design Research Centre at OCAD University and the Trace R&D Center at University of Maryland under funding for the FLOE Project from the William and Flora Hewlett Foundation and the National Institute on Disability, Independent Living, and Rehabilitation Research (NIDILRR), Administration for Community Living under grant #90RE5027.

Chrome Webstore


Please see CONTRIBUTING.md for details about our contribution process.

Building the extension


Install grunt-cli globally:

npm install -g grunt-cli

Install required dependencies:

npm install


This will generate a dist directory at the root of the project. This is used when creating a published version, and can also be run as an unpacked extension.

grunt build



Run the node-based tests:

node tests/node/all-tests.js


Run the browser-based tests:


NOTE: Browser tests should be served through a web server. The exact URL may vary.

All tests with reports

Run all the tests and generate reports which can be viewed in the browser from the "reports" directory:

# run on the host machine
npm test

# run in a vagrant vm
npm run test:vagrant

Trying UIO+ in the browser


Follow these steps if you want to use the unpacked version of the extension:

  1. Visit chrome://extensions in your Chrome browser. Alternatively, open Chrome's menu by clicking the icon to the far right of the Omnibox; the menu's icon is three horizontal bars. Select Extensions under the Tools menu to open Chrome's extension settings.
  2. Ensure that the Developer mode checkbox in the top right-hand corner is checked.
  3. Click Load unpacked extension to open a file-selection dialog.
  4. Navigate to the directory in which your local copy of the extension lives, and select the dist folder.

NOTE: Published versions can be installed from the Chrome Web Store.

3rd Party Software

BSD 3-Clause

MIT License