diff --git a/accessibility-checker/boilerplates/jest-puppeteer-ts/.gitignore b/accessibility-checker/boilerplates/jest-puppeteer-ts/.gitignore
new file mode 100644
index 000000000..872aa273a
--- /dev/null
+++ b/accessibility-checker/boilerplates/jest-puppeteer-ts/.gitignore
@@ -0,0 +1 @@
+results
\ No newline at end of file
diff --git a/accessibility-checker/boilerplates/jest-puppeteer-ts/achecker.js b/accessibility-checker/boilerplates/jest-puppeteer-ts/achecker.js
new file mode 100644
index 000000000..e8d3a0aa0
--- /dev/null
+++ b/accessibility-checker/boilerplates/jest-puppeteer-ts/achecker.js
@@ -0,0 +1,52 @@
+module.exports = {
+ // optional - Specify the rule archive
+ // Default: latest
+ // Run `npx aat archives` for a list of valid ruleArchive ids and policy ids
+ ruleArchive: 'latest',
+
+ // optional - Specify one or many policies to scan.
+ // Run `npx aat archives` for a list of valid ruleArchive ids and policy ids
+ policies: [ "IBM_Accessibility"],
+
+ // optional - Specify one or many violation levels on which to fail the test
+ // i.e. If specified violation then the testcase will only fail if
+ // a violation is found during the scan.
+ // i.e. failLevels: ["violation"]
+ // i.e. failLevels: ["violation","potential violation"] or refer to below as a list
+ // Default: ["violation","potential violation"]
+ failLevels: [ "violation" ],
+
+ // optional - Specify one or many violation levels which should be reported
+ // i.e. If specified violation then in the report it would only contain
+ // results which are level of violation.
+ // i.e. reportLevels: ["violation"]
+ // Valid values: violation, potentialviolation, recommendation, potentialrecommendation, manual
+ // Default: ["violation","potential violation"]
+ reportLevels: [
+ "violation",
+ "potentialviolation",
+ "recommendation",
+ "potentialrecommendation",
+ "manual"
+ ],
+
+ // Optional - Which type should the results be outputted to
+ // Valid values: json, csv
+ // Default: json
+ outputFormat: [ "json" ],
+
+ // Optional - Specify labels that you would like associated to your scan
+ //
+ // i.e.
+ // label: ["Firefox","master","V12","Linux"]
+ // Default: N/A
+ label: [],
+
+ // optional - Where the scan results should be saved.
+ // Default: results
+ outputFolder: "results",
+
+ // optional - Where the baseline results should be loaded from
+ // Default: baselines
+ baselineFolder: "baselines",
+}
diff --git a/accessibility-checker/boilerplates/jest-puppeteer-ts/matchers/toBeAccessible.ts b/accessibility-checker/boilerplates/jest-puppeteer-ts/matchers/toBeAccessible.ts
new file mode 100644
index 000000000..7de930d08
--- /dev/null
+++ b/accessibility-checker/boilerplates/jest-puppeteer-ts/matchers/toBeAccessible.ts
@@ -0,0 +1,26 @@
+/**
+ * Copyright IBM Corp. 2019
+ *
+ * This source code is licensed under the Apache-2.0 license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+'use strict';
+
+import { assertCompliance, getCompliance, stringifyResults } from "accessibility-checker";
+import { Page } from "puppeteer";
+
+async function toBeAccessible(node: Page) {
+ let results = await getCompliance(node, this.currentTestName.replace(/[ \\/]/g, "_"));
+ if (assertCompliance(results.report) === 0) {
+ return {
+ pass: true
+ }
+ } else {
+ return {
+ pass:false,
+ message: () => stringifyResults(results.report)
+ }
+ }
+}
+module.exports = toBeAccessible;
\ No newline at end of file
diff --git a/accessibility-checker/boilerplates/jest-puppeteer-ts/package.json b/accessibility-checker/boilerplates/jest-puppeteer-ts/package.json
new file mode 100644
index 000000000..70d9f117d
--- /dev/null
+++ b/accessibility-checker/boilerplates/jest-puppeteer-ts/package.json
@@ -0,0 +1,29 @@
+{
+ "name": "@ibma/eac-jest-boilerplate",
+ "version": "3.0.0",
+ "description": "Example usage of IBM Equal Access Checker with Jest, Puppeteer, and Typescript",
+ "scripts": {
+ "test": "jest test-ts/*.test.ts"
+ },
+ "engines": {
+ "node": ">=18"
+ },
+ "jest": {
+ "preset": "ts-jest",
+ "setupFilesAfterEnv": [
+ "./setupAfterEnv.ts"
+ ],
+ "transformIgnorePatterns": [
+ "ace-node\\.js"
+ ]
+ },
+ "devDependencies": {
+ "@jest/globals": "^29.5.0",
+ "@types/jest": "^29.5.1",
+ "accessibility-checker": "*",
+ "jest": "^29.5.0",
+ "puppeteer": "^20.2.1",
+ "ts-jest": "^29.1.0",
+ "typescript": "^4.1.5"
+ }
+}
diff --git a/accessibility-checker/boilerplates/jest-puppeteer-ts/sample/Hello.html b/accessibility-checker/boilerplates/jest-puppeteer-ts/sample/Hello.html
new file mode 100644
index 000000000..08e52b427
--- /dev/null
+++ b/accessibility-checker/boilerplates/jest-puppeteer-ts/sample/Hello.html
@@ -0,0 +1,48 @@
+
+
+
+