=== AccessiBar — Accessibility Toolbar ===
Contributors: andreibarbashin
Tags: accessibility, wcag, ada, toolbar, a11y
Requires at least: 5.8
Tested up to: 6.9
Requires PHP: 7.4
Stable tag: 1.0.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

A lightweight accessibility toolbar for WordPress. No subscriptions, no external requests, 100% GDPR-compliant.

== Description ==

**AccessiBar** adds a floating accessibility button to your website. When visitors click it, a compact toolbar appears with tools that let them adjust the site to their needs — increase font size, enable high contrast mode, switch to a dyslexia-friendly font, and more.

**Why AccessiBar?**

Many accessibility plugins have moved to a SaaS model — requiring subscriptions, limiting free features behind paywalls, making external API calls, and raising GDPR concerns. AccessiBar takes a different approach:

* **No paywalls.** Every feature works without any subscription or premium tier.
* **Zero external requests.** No CDNs, no third-party APIs, no Google Fonts. Everything runs locally from your server.
* **GDPR-compliant by design.** No cookies are set. User preferences are stored in the browser's localStorage — no data ever leaves the visitor's device.
* **Zero dependencies.** Works with any WordPress theme and page builder — no Elementor, no Divi, no specific theme required.
* **No server-side processing.** No database tables, no server load, no SQL queries. Everything runs in the visitor's browser.
* **Lightweight.** Under 45KB total frontend footprint (CSS + JS + font). Your site stays fast.
* **Keyboard accessible.** The toolbar itself is fully navigable with Tab, Enter, and Escape keys, with proper ARIA attributes and focus management.

**Toolbar Features:**

* **Font Size Controls** — Increase, decrease, or reset the page font size.
* **High Contrast Mode** — Dark background with light text and highlighted links for better readability.
* **Highlight Links** — Makes all links visually distinct with outlines and underlines.
* **Readable Font** — Switches to OpenDyslexic, a typeface designed for readers with dyslexia. The font file is bundled locally.
* **Stop Animations** — Disables all CSS animations and transitions for visitors with motion sensitivities.
* **Large Cursor** — Increases the mouse cursor size for easier tracking.

All preferences are remembered across page loads via localStorage.

**Admin Settings:**

* Button position (any corner)
* Button color
* Button size (small, medium, large)
* Optional button label text
* Toggle individual toolbar features on/off
* Hide on mobile devices option

== Installation ==

1. Upload the `accessibar` folder to `/wp-content/plugins/`.
2. Activate the plugin through the Plugins menu in WordPress.
3. Go to **Settings → AccessiBar** to customize the button appearance and available tools.

== Frequently Asked Questions ==

= Are all features included? =

Yes. All features are available without any subscription, premium tier, or usage limits.

= Is it GDPR compliant? =

Yes. AccessiBar makes zero external requests — no cookies, no tracking, no third-party scripts. All visitor preferences are stored in the browser's localStorage and never leave the device.

= Does it work with Elementor / Divi / Gutenberg? =

Yes. AccessiBar works with any WordPress theme and any page builder. It uses a simple floating button that doesn't interfere with your existing layout.

= Does it slow down my site? =

No. The CSS and JS loaded on every page are under 17KB combined. The OpenDyslexic font (25KB) is only loaded when a visitor activates the readable font feature. Total footprint is under 45KB.

= Can visitors save their preferences? =

Yes. All settings are automatically saved in the browser's localStorage and restored on every page load — no account or cookies required.

= Does it have any visit or usage limits? =

No. There are no monthly visit caps, no pageview metering, and no feature gates. AccessiBar runs entirely in the browser with zero server-side processing, so there is nothing to meter.

= Does it work with WPML / TranslatePress / Polylang? =

Yes. AccessiBar operates via client-side JavaScript and CSS, independent of your CMS translation layer. It works on any page regardless of language or translation plugin.

= Is the toolbar itself accessible? =

Yes. The toolbar supports full keyboard navigation (Tab, Enter, Escape), includes ARIA attributes, and implements a focus trap when the panel is open.

== Screenshots ==

1. The floating accessibility button on your site.
2. The open toolbar with all available tools.
3. Admin settings page.

== Changelog ==

= 1.0.0 =
* Initial release.

== Upgrade Notice ==

= 1.0.0 =
Initial release of AccessiBar.
