Skip to content

Add Accessibility Block plugin (blocks/accessibility) 1.0.1.0 for OJS 3.5#512

Open
edersotto wants to merge 1 commit into
pkp:mainfrom
OJSBR:add-accessibility-block
Open

Add Accessibility Block plugin (blocks/accessibility) 1.0.1.0 for OJS 3.5#512
edersotto wants to merge 1 commit into
pkp:mainfrom
OJSBR:add-accessibility-block

Conversation

@edersotto

Copy link
Copy Markdown

Adds a new entry for the Accessibility Block plugin, a sidebar block that gives readers accessibility controls: zoom in (A+), zoom out (A-), a high-contrast toggle and a reset button. The reader preferences are stored in the browser and re-applied on every page of the journal.

Notes

  • The package is a single accessibility/ directory with LICENSE at its root, and contains no composer/npm dependency files.
  • Validated locally with xmllint --schema ./plugins.xsd ./plugins.xml --noout; the package URL resolves and its MD5 matches the entry.
  • Ships in 6 languages (en, pt_BR, es, fr_FR, it, de) and includes a Cypress functional test (cypress/tests/functional/AccessibilityBlock.cy.js) written along the lines of the tests shipped with the OJS plugins.
  • Accessibility details: real button elements with aria-label / aria-pressed, a visually hidden live region announcing the zoom level, and 40px minimum touch targets. The buttons reuse the active theme button style, with a zero-specificity fallback for themes that do not define it.
  • The plugin modifies no core files and adds no database schema; disabling it removes the block entirely.
  • I did not include a certification element, since that seems to be for the maintainers to decide.

Maintained by OJSBR (https://ojsbr.com).

… 3.5

Sidebar block with reader accessibility controls: zoom in/out, high contrast
and reset, with the preferences persisted across pages.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant