Spelling errors cause frustration for maintainers, it can delay a response or cause confusion in what is being discussed.
I'll admit, I'm not a great typist. I fat-finger keys and misspell words a lot. I try to be careful, write slowly, and proofread anything before sending a message. I also leverage tools that will flag spelling and grammar errors. When I write quickly it typically results in some misspellings.
My Workflow
The opensource community uses issues as a way of communicating problems feature requests questions, etc. Maintainers need to read each issue and all the comments. Spelling errors cause frustration for maintainers, it can delay a response or cause confusion in what is being discussed. To help a maintainer I have created a spell check using the Bing spell check API azure service.
Once a person leaves a comment on an issue an action will trigger to grab the text and spell-check it using the Azure API. If any corrections come back in the response the action will check how confident the suggestion is against what the configuration is set to. If the confidence is higher than the configured confidence, the action will update the word(s) automatically.
This can save a maintainer so much time that I wanted to submit it to this Hackathon.
Requirements
You will need to signup for Azure and create a Bing spell check service. This can all be done for free. Once created, you will get a Key and Endpoint that you can add to your Secrets in the repository.
Submission Category:
Maintainer Must-Haves
Yaml File
uses: tonydiaz/bing-spellcheck-github-action@main
with:
spellchecker-key: ${{ secrets.SPELLCHECKER_KEY }}
spellchecker-endpoint: ${{ secrets.SPELLCHECKER_ENDPOINT }}
spellcheck-confidence: 0.90
github-secret: ${{ secrets.GITHUB_TOKEN }}
Link to Code
Bing spell check github action
This action uses the Bing spell checker API to correct spelling errors in issue comments. You will need to register for an Microsoft Azure account to get the Bing spell check key and endpoint to use for this action.
Inputs
Required
SPELLCHECKER_KEY - The Bing spell check API key. Given when registering the service in Azure. SPELLCHECKER_ENDPOINT - The Bing spell check endpoint. Given when registering the service in Azure. GITHUB_TOKEN - Auto-created token from github for actions Provide a spell check confidence value. How confident should the suggested correction be to update the word? The default is 80%
Example usage
The key and endpoint should be be added as envrionment variables
uses: actions/bing-spellcheck-github-action@main
with:
spellchecker-key: ${{ secrets.SPELLCHECKER_KEY }}
spellchecker-endpoint: ${{ secrets.SPELLCHECKER_ENDPOINT }}
spellcheck-confidence: 0.90
github-secret: ${{ secrets.GITHUB_TOKEN }}
GitHub Action in action:
Additional Resources / Info
- Dev username: tonydiaz
Top comments (2)
Can I test it on your repo?
The repo in the post isn't set up for that action. I did create another one to test it out. It is currently active, but I suspect I may need to take it down since the API service charges after enough usage. The action I made only runs on issue comments not newly created issues. I mean to test issue creation also. github.com/tonydiaz/test-bing-spel...