Skip to content

Commit 4cc9e25

Browse files
authored
chore: Backport #40 and #43 to v2 (#41)
chore: Backport #40 and #43 to v2 - Add accessibility optimization link to README - Latest process updates
2 parents 6da63ef + 79ec4a8 commit 4cc9e25

File tree

3 files changed

+92
-52
lines changed

3 files changed

+92
-52
lines changed

CONTRIBUTING.md

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
## Contributing
1+
# Contributing
22

33
[fork]: https://github.com/github/accessibility-scanner/fork
44
[pr]: https://github.com/github/accessibility-scanner/compare
@@ -9,13 +9,29 @@ Contributions to this project are [released](https://help.github.com/articles/gi
99

1010
Please note that this project is released with a [Contributor Code of Conduct](CODE_OF_CONDUCT.md). By participating in this project you agree to abide by its terms.
1111

12-
## Submitting a pull request
12+
## How you can contribute
1313

14-
Thank you for your interest in this GitHub action, however, right now we are not taking contributions.
14+
We are not accepting pull requests at this time. However, we welcome and encourage you to:
1515

16+
- **Test the a11y scanner** and share your experiences
17+
- **Create issues** to report bugs, unexpected behavior, or documentation improvements
18+
- **Share feedback** about your use cases and workflows
19+
20+
### Creating issues
21+
22+
When creating an issue, please provide:
23+
24+
- A clear and descriptive title
25+
- Detailed steps to reproduce (for bugs)
26+
- Expected vs. actual behavior
27+
- Your environment details (OS, browser, GitHub Actions runner, etc.)
28+
- Any relevant logs or screenshots
29+
30+
### Feature requests
31+
32+
While we welcome feature requests, please note that we cannot guarantee that any feature request will be implemented or prioritized. We review all suggestions and consider them as part of our ongoing development process.
1633

1734
## Resources
1835

1936
- [How to Contribute to Open Source](https://opensource.guide/how-to-contribute/)
20-
- [Using Pull Requests](https://help.github.com/articles/about-pull-requests/)
2137
- [GitHub Support](https://support.github.com)

README.md

Lines changed: 64 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,36 @@
11
# AI-powered Accessibility Scanner
22

3-
The AI-powered Accessibility Scanner (a11y scanner) is a GitHub Action that detects accessibility barriers across your digital products, creates trackable issues, and leverages Copilot for AI-powered fixes.
3+
The AI-powered Accessibility Scanner (a11y scanner) is a GitHub Action that detects accessibility barriers across your digital products, creates trackable issues, and leverages GitHub Copilot for AI-powered fixes.
44

55
The a11y scanner helps teams:
66

77
- 🔍 Scan websites, files, repositories, and dynamic content for accessibility issues
8-
- 📝 Create actionable GitHub issues that can be assigned to Copilot
9-
- 🤖 Propose fixes with Copilot, with humans reviewing before merging
8+
- 📝 Create actionable GitHub issues that can be assigned to GitHub Copilot
9+
- 🤖 Propose fixes with GitHub Copilot, with humans reviewing before merging
1010

11-
> ⚠️ **Note:** The a11y scanner is currently in beta. It can help identify accessibility gaps but cannot guarantee fully accessible code suggestions. Always review before merging!
11+
> ⚠️ **Note:** The a11y scanner is currently in public preview. Feature development work is still ongoing. It can help identify accessibility gaps but cannot guarantee fully accessible code suggestions. Always review before merging!
12+
13+
🎥 **[Watch the demo video](https://youtu.be/CvRJcEzCSQM)** to see the a11y scanner in action.
1214

1315
---
1416

1517
## Requirements
1618

17-
This project is a GitHub Actions action. A GitHub Actions workflow is required to run it, and you must have available GitHub Actions minutes.
19+
To use the a11y scanner, you'll need:
20+
21+
- **GitHub Actions** enabled in your repository
22+
- **GitHub Issues** enabled in your repository
23+
- **Available GitHub Actions minutes** for your account
24+
- **Admin access** to add repository secrets
25+
- **GitHub Copilot** (optional) - The a11y scanner works without GitHub Copilot and will still create issues for accessibility findings. However, without GitHub Copilot, you won't be able to automatically assign issues to GitHub Copilot for AI-powered fix suggestions and PR creation.
1826

19-
📚 [Understanding GitHub Actions](https://docs.github.com/en/actions/get-started/understand-github-actions) | [Quickstart for GitHub Actions](https://docs.github.com/en/actions/get-started/quickstart) | [Writing workflows](https://docs.github.com/en/actions/how-tos/write-workflows) | [GitHub Actions billing](https://docs.github.com/en/billing/concepts/product-billing/github-actions)
20-
## Getting Started
27+
## Getting started
2128

22-
### 1. Add a Workflow File
29+
### 1. Add a workflow file
2330

2431
Create a workflow file in `.github/workflows/` (e.g., `a11y-scan.yml`) in your repository:
2532

26-
```YAML
33+
```yaml
2734
name: Accessibility Scanner
2835
on: workflow_dispatch # This configures the workflow to run manually, instead of (e.g.) automatically in every PR. Check out https://docs.github.com/en/actions/reference/workflows-and-actions/workflow-syntax#on for more options.
2936

@@ -36,49 +43,64 @@ jobs:
3643
urls: | # Provide a newline-delimited list of URLs to scan; more information below.
3744
REPLACE_THIS
3845
repository: REPLACE_THIS/REPLACE_THIS # Provide a repository name-with-owner (in the format "primer/primer-docs"). This is where issues will be filed and where Copilot will open PRs; more information below.
39-
token: ${{ secrets.GH_TOKEN }} # This token must have write access to the repo above (contents, issues, and PRs); more information below. Note: GitHub Actions’ `GITHUB_TOKEN` (https://docs.github.com/en/actions/tutorials/authenticate-with-github_token) cannot be used here.
40-
cache_key: REPLACE_THIS # Provide a filename that will be used when caching results. We recommend including the name or domain of the site being scanning.
46+
token: ${{ secrets.GH_TOKEN }} # This token must have write access to the repo above (contents, issues, and PRs); more information below. Note: GitHub Actions' GITHUB_TOKEN cannot be used here.
47+
cache_key: REPLACE_THIS # Provide a filename that will be used when caching results. We recommend including the name or domain of the site being scanned.
48+
# login_url: # Optional: URL of the login page if authentication is required
49+
# username: # Optional: Username for authentication
50+
# password: ${{ secrets.PASSWORD }} # Optional: Password for authentication (use secrets!)
51+
# auth_context: # Optional: Stringified JSON object for complex authentication
52+
# skip_copilot_assignment: false # Optional: Set to true to skip assigning issues to GitHub Copilot (or if you don't have GitHub Copilot)
4153
```
4254

4355
> 👉 Update all `REPLACE_THIS` placeholders with your actual values. See [Action Inputs](#action-inputs) for details.
4456
45-
Required Permissions:
57+
**Required permissions:**
4658

4759
- Write access to add or update workflows
4860
- Admin access to add repository secrets
4961

50-
📚 [Understanding GitHub Actions](https://docs.github.com/en/actions/get-started/understand-github-actions) | [Managing GitHub Actions settings](https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository) | [Writing workflows](https://docs.github.com/en/actions/how-tos/write-workflows)
62+
📚 Learn more
63+
- [Quickstart for GitHub Actions](https://docs.github.com/en/actions/get-started/quickstart)
64+
- [Understanding GitHub Actions](https://docs.github.com/en/actions/get-started/understand-github-actions)
65+
- [Writing workflows](https://docs.github.com/en/actions/how-tos/write-workflows)
66+
- [Managing GitHub Actions settings](https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository)
67+
- [GitHub Actions billing](https://docs.github.com/en/billing/concepts/product-billing/github-actions)
5168

5269
---
5370

54-
### 2. Create a Token and Add a Secret
71+
### 2. Create a token and add a secret
5572

56-
The a11y scanner requires a Personal Access Token (PAT) as repository secret:
73+
The a11y scanner requires a Personal Access Token (PAT) as a repository secret:
5774

58-
#### The `GH_TOKEN` is a fine-grained PAT with
75+
**The `GH_TOKEN` is a fine-grained PAT with:**
5976

6077
- `actions: write`
6178
- `contents: write`
6279
- `issues: write`
6380
- `pull-requests: write`
6481
- `metadata: read`
65-
- Scope: Your target repository (where issues and PRs will be created) and the repository containing your workflow
82+
- **Scope:** Your target repository (where issues and PRs will be created) and the repository containing your workflow
6683

67-
> 👉 GitHub Actions' default `GITHUB_TOKEN` cannot be used here.
84+
> 👉 GitHub Actions' default [GITHUB_TOKEN](https://docs.github.com/en/actions/tutorials/authenticate-with-github_token) cannot be used here.
6885
69-
📚 [Creating a fine-grained PAT](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens#creating-a-fine-grained-personal-access-token) | [Creating repository secrets](https://docs.github.com/en/actions/how-tos/write-workflows/choose-what-workflows-do/use-secrets#creating-secrets-for-a-repository)
86+
📚 Learn more
87+
- [Creating a fine-grained PAT](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens#creating-a-fine-grained-personal-access-token)
88+
- [Creating repository secrets](https://docs.github.com/en/actions/how-tos/write-workflows/choose-what-workflows-do/use-secrets#creating-secrets-for-a-repository)
7089

7190
---
7291

73-
### 3. Run Your First Scan
92+
### 3. Run your first scan
7493

75-
Trigger the workflow manually or automatically based on your configuration. The scanner will run and create issues for any accessibility findings. When issues are assigned to Copilot, always review proposed fixes before merging.
94+
Trigger the workflow manually or automatically based on your configuration. The a11y scanner will run and create issues for any accessibility findings. When issues are assigned to GitHub Copilot, always review proposed fixes before merging.
7695

77-
📚 [Running a workflow manually](https://docs.github.com/en/actions/how-tos/manage-workflow-runs/manually-run-a-workflow#running-a-workflow)
96+
📚 Learn more
97+
- [View workflow run history](https://docs.github.com/en/actions/how-tos/monitor-workflows/view-workflow-run-history)
98+
- [Running a workflow manually](https://docs.github.com/en/actions/how-tos/manage-workflow-runs/manually-run-a-workflow#running-a-workflow)
99+
- [Re-run workflows and jobs](https://docs.github.com/en/actions/how-tos/manage-workflow-runs/re-run-workflows-and-jobs)
78100

79101
---
80102

81-
## Action Inputs
103+
## Action inputs
82104

83105
| Input | Required | Description | Example |
84106
|-------|----------|-------------|---------|
@@ -88,54 +110,54 @@ Trigger the workflow manually or automatically based on your configuration. The
88110
| `cache_key` | Yes | Key for caching results across runs<br>Allowed: `A-Za-z0-9._/-` | `cached_results-primer.style-main.json` |
89111
| `login_url` | No | If scanned pages require authentication, the URL of the login page | `https://github.com/login` |
90112
| `username` | No | If scanned pages require authentication, the username to use for login | `some-user` |
91-
| `password` | No | If scanned pages require authentication, the password to use for login | `correct-horse-battery-staple` |
92-
| `auth_context` | No | If scanned pages require authentication, a stringified JSON object containing username, password, cookies, and/or localStorage from an authenticated session | `{"username":"some-user","password":"correct-horse-battery-staple","cookies":[{"name":"theme-preference","value":"light","domain":"primer.style","path":"/"}],"localStorage":{"https://primer.style":{"theme-preference":"light"}}}` |
93-
| `skip_copilot_assignment` | No | Whether to skip assigning filed issues to Copilot | `true` |
113+
| `password` | No | If scanned pages require authentication, the password to use for login | `${{ secrets.PASSWORD }}` |
114+
| `auth_context` | No | If scanned pages require authentication, a stringified JSON object containing username, password, cookies, and/or localStorage from an authenticated session | `{"username":"some-user","password":"***","cookies":[...]}` |
115+
| `skip_copilot_assignment` | No | Whether to skip assigning filed issues to GitHub Copilot. Set to `true` if you don't have GitHub Copilot or prefer to handle issues manually | `true` |
94116

95117
---
96118

97119
## Authentication
98120

99121
If access to a page requires logging-in first, and logging-in requires only a username and password, then provide the `login_url`, `username`, and `password` inputs.
100122

101-
If your login flow is more complex—if it requires two-factor authentication, single sign-on, passkeys, etc.and you have a custom action that [authenticates with Playwright](https://playwright.dev/docs/auth) and persists authenticated session state to a file, then provide the `auth_context` input. (If `auth_context` is provided, `login_url`, `username`, and `password` will be ignored.)
123+
If your login flow is more complex—if it requires two-factor authentication, single sign-on, passkeys, etc.and you have a custom action that [authenticates with Playwright](https://playwright.dev/docs/auth) and persists authenticated session state to a file, then provide the `auth_context` input. (If `auth_context` is provided, `login_url`, `username`, and `password` will be ignored.)
102124

103125
> [!IMPORTANT]
104-
> Dont put passwords in your workflow as plain text; instead reference a [repository secret](https://docs.github.com/en/actions/how-tos/write-workflows/choose-what-workflows-do/use-secrets#creating-secrets-for-a-repository).
126+
> Don't put passwords in your workflow as plain text; instead reference a [repository secret](https://docs.github.com/en/actions/how-tos/write-workflows/choose-what-workflows-do/use-secrets#creating-secrets-for-a-repository).
105127
106128
---
107129

108-
## Configuring Copilot
130+
## Configuring GitHub Copilot
109131

110-
The a11y scanner leverages Copilot coding agent, which can be configured with custom instructions:
132+
The a11y scanner leverages GitHub Copilot coding agent, which can be configured with custom instructions:
111133

112-
- Repository-wide: `.github/copilot-instructions.md`
113-
- Directory/file-scoped: `.github/instructions/*.instructions.md`
134+
- **Repository-wide:** `.github/copilot-instructions.md`
135+
- **Directory/file-scoped:** `.github/instructions/*.instructions.md`
114136

115-
📚 [Adding repository custom instructions](https://docs.github.com/en/copilot/how-tos/configure-custom-instructions/add-repository-instructions) | [Copilot .instructions.md support](https://github.blog/changelog/2025-07-23-github-copilot-coding-agent-now-supports-instructions-md-custom-instructions/) | [Copilot agents.md support](https://github.blog/changelog/2025-08-28-copilot-coding-agent-now-supports-agents-md-custom-instructions)
137+
📚 Learn more
138+
- [Adding repository custom instructions](https://docs.github.com/en/copilot/how-tos/configure-custom-instructions/add-repository-instructions)
139+
- [Optimizing GitHub Copilot for accessibility](https://accessibility.github.com/documentation/guide/copilot-instructions)
140+
- [GitHub Copilot .instructions.md support](https://github.blog/changelog/2025-07-23-github-copilot-coding-agent-now-supports-instructions-md-custom-instructions/)
141+
- [GitHub Copilot agents.md support](https://github.blog/changelog/2025-08-28-copilot-coding-agent-now-supports-agents-md-custom-instructions)
116142

117143
---
118144

119145
## Feedback
120146

121-
Please refer to the [CONTRIBUTING](./CONTRIBUTING.md) file for more information.
147+
💬 We welcome your feedback! To submit feedback or report issues, please create an issue in this repository. For more information on contributing, please refer to the [CONTRIBUTING](./CONTRIBUTING.md) file.
122148

123149
## License
124150

125-
This project is licensed under the terms of the MIT open source license. Please refer to the [LICENSE](./LICENSE) file for the full terms.
151+
📄 This project is licensed under the terms of the MIT open source license. Please refer to the [LICENSE](./LICENSE) file for the full terms.
126152

127153
## Maintainers
128154

129-
Please refer to the [CODEOWNERS](./.github/CODEOWNERS) file for more information.
155+
🔧 Please refer to the [CODEOWNERS](./.github/CODEOWNERS) file for more information.
130156

131157
## Support
132158

133-
Please refer to the [SUPPORT](./SUPPORT.md) file for more information.
159+
Please refer to the [SUPPORT](./SUPPORT.md) file for more information.
134160

135161
## Acknowledgement
136162

137-
Thank you to our beta testers for their help in testing this project.
138-
139-
---
140-
141-
*Last updated: 2025-10-09*
163+
✨ Thank you to our beta testers for their help with making this project!

SUPPORT.md

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,21 @@
11
# Support
22

3-
## How to file issues and get help
3+
## How to get help
44

5-
This project uses GitHub Issues to track bugs and feature requests. Please search the existing issues before filing new issues to avoid duplicates. For new issues, file your bug or feature request as a new issue.
5+
This project uses GitHub Issues to track bugs, feature requests, and support inquiries. Please search the existing issues before filing new issues to avoid duplicates.
66

77
For help or questions about using this project, please open an issue for support requests, usage questions, or general inquiries. At this time, GitHub Discussions are not enabled. All communication should occur via issues.
88

9-
## Project Maintenance Status
9+
For information about contributing to this project, including how to create issues and what types of contributions we accept, please refer to the [CONTRIBUTING](./CONTRIBUTING.md) file.
10+
11+
## Project maintenance status
1012

1113
This repo `github/accessibility-scanner` is under active development and maintained by GitHub staff during the public preview state. We will do our best to respond to support, feature requests, and community questions in a timely manner.
1214

13-
## Important Notice
15+
## Important notice
1416

15-
This project is a work in progress, and we do not guarantee that code fixes or suggestions produced by Copilot will be fully accessible. Please use caution when applying the suggestions it provides. Always confirm or verify Copilot's recommendations with an accessibility subject matter expert before using them in production.
17+
The a11y scanner is currently in public preview and feature development work is still ongoing. This project cannot guarantee that code fixes or suggestions produced by GitHub Copilot will be fully accessible. Please use caution when applying the suggestions it provides. Always confirm or verify GitHub Copilot's recommendations with an accessibility subject matter expert before using them in production.
1618

17-
## GitHub Support Policy
19+
## GitHub support policy
1820

1921
Support for this project is limited to the resources listed above (GitHub Issues).

0 commit comments

Comments
 (0)