Skip to content

Releases: a11ywatch/kayle

v0.8.55

08 Mar 22:57
Compare
Choose a tag to compare

Whats Changed

Getting the rules in order to exclude can be done by importing axeRules and htmlcsRules. Htmlcs rules are a WIP to handle the details like helpURL.

  • feat(rules): add pre-compiled rules

Full Changelog: v0.8.27...v0.8.55

v0.8.22

28 Feb 21:36
Compare
Choose a tag to compare

What's Changed

  • fix 'it' base locales htmlcs
  • add 'ar' locales htmlcs
  • add 'ko' locales htmlcs

Full Changelog: v0.7.12...v0.8.22

v0.8.17

18 Feb 23:14
Compare
Choose a tag to compare

What's Changed

This release we bring to you kayle as a CLI!

npm install puppeteer kayle_cli -g
# view options
kayle_cli -help
# audit a website
kayle_cli https://www.somewebsite.com
  • Get style for nodes by @j-mendez in #15
  • remove dup element id tracking 2.2 changes

Full Changelog: v0.7.12...v0.8.17

v0.7.12

26 Sep 23:42
Compare
Choose a tag to compare

Whats Changed

New runner added IBM-Ace

import { kayle } from "kayle";

 const { issues, pageUrl, documentTitle, meta, automateable } = await kayle({
   page,
   browser,
   runners: ["ace"],
   origin: "https://www.drake.com",
});
// example results for an issue
// {
//   context: '<a id="cta_button_5479613_5d5e3141-f749-4fa7-b734-25667e531cfe" class="cta_button " href="https://www.drake.com/cs/c/?cta_guid=5d5e3141-f749-4fa7-b734-25667e531cfe&amp;signature=AAH58kHo1qzsXaPOT8WcWuRYgZglZwRuZw&amp;pageId=8839032963&amp;placement_gu...',
//   selector: '#cta_button_5479613_5d5e3141-f749-4fa7-b734-25667e531cfe',
//   code: 'WCAG2AA.Principle1.Guideline1_4.1_4_3.G18.Alpha',
//   type: 'warning',
//   typeCode: 2,
//   message: "This element's text or background contains transparency. Ensure the contrast ratio between the text and background are at least 4.5:1.",
//   runner: 'ace',
//   recurrence: 0
// }  

Full Changelog: v0.4.55...v0.7.12

v0.4.55

22 May 12:53
Compare
Choose a tag to compare

Whats Changed

  1. major performance changes and flake fixes from microTask sort switch to in place sort algorithm.
  2. fix table header testing htmlcs.

Full Changelog: v0.3.45...v0.4.51

v0.4.32

18 May 14:12
Compare
Choose a tag to compare

Whats Changed

  1. Compiled kayle browser extension

--

Use the command yarn build:extension to compile the scripts into a valid chrome extension.

Here is a an example locally

import puppeteer from "puppeteer";
import { kayle } from "kayle";
import { join } from "path";
import { cwd } from "process";

(async () => {
  // project root directory loading extension
  const ext = join(cwd(), "chrome-extension");

  const browser = await puppeteer.launch({
    headless: "new",
    dumpio: true,
    ignoreDefaultArgs: ["--disable-extensions"],
    args: [
      `--load-extension=${ext}`, // <- runs on every page with extensions on chrome urls
      "--extensions-on-chrome-urls",
    ],
  });

  const page = await browser.newPage();

  const data = await kayle(
    {
      page,
      browser,
      runners: ["htmlcs", "axe"],
      includeWarnings: true,
      origin: "https://a11ywatch.com",
      _browserExtension: true, // enable the extension
    },
    true // prevent closing the page on finish
  );

  console.log(data);

  await browser.close();
})();

v0.4.23

14 May 23:45
Compare
Choose a tag to compare

Whats Changed

  1. Add brave browser adblock support.
  2. Major performance improvements and bug fixes.
  3. Fix htmlcs table testing index crash.

In order to enable set the env var KAYLE_ADBLOCK=true and install adblock-rs with npm i adblock-rs.

Full Changelog: v0.3.45...v0.4.23

v0.3.65

06 May 18:46
Compare
Choose a tag to compare

Whats Changed

  1. feat(navigation): add navigation with html or a url.

Example playwright

import { kayle } from "kayle";
import { chromium } from "playwright";

const browser = await chromium.launch({ headless: "new" });
const page = await browser.newPage();

const results = await kayle({
  page,
  browser,
  runners: ["htmlcs", "axe"],
  includeWarnings: true,
  origin: "https://a11ywatch.com",
});

Puppeteer

import { kayle } from "kayle";
import { launch } from "puppeteer";

const browser = await launch({ headless: "new" });
const page = await browser.newPage();

const results = await kayle({
  page,
  browser,
  runners: ["htmlcs", "axe"],
  includeWarnings: true,
  origin: "https://a11ywatch.com",
});

v0.3.45

29 Apr 21:13
Compare
Choose a tag to compare

Major Release

  1. base release for puppeteer or playwright universal compatibility

Full Changelog: https://github.com/a11ywatch/a11y/commits/v0.3.38