Check markdown documents for spelling errors with smart dictionary and context awareness. Part of the DevTools Surf developer suite. Browse more tools in the API / Config collection.
Use Cases
Check README and API documentation for typos before publishing to a public repository.
Validate that auto-generated Markdown documentation doesn't contain garbled words from templating errors.
Proofread technical blog posts with code examples, keeping the code blocks unchecked.
Audit a docs directory across a monorepo for spelling consistency before a major product launch.
Tips
Add technical terms, product names, and code identifiers to the custom dictionary before running — they'll be flagged as misspellings otherwise.
Enable 'ignore code blocks' to skip spell-checking inside ``` fences and `inline code` — code tokens are not English words.
Run spell check after writing but before peer review — catching basic errors before review focuses reviewer attention on content quality.
Fun Facts
The first software spell checker, developed at Stanford in 1971 for the TENEX operating system, used a dictionary of 10,000 words. Modern dictionaries contain 170,000+ words with morphological variants.
Technical writing contains approximately 3-5x more domain-specific terms than general prose — making custom dictionary support the most important feature in a spell checker for developer documentation.
nspell, the npm package used by many JavaScript spell checkers including this tool, is based on Hunspell — the spell engine used in Firefox, Chrome, and LibreOffice, released in 2002.
FAQ
Does it check code inside backticks?
Inline code (backtick-wrapped) and fenced code blocks (triple backtick) are excluded from spell checking by default. Toggle 'check code' to include them if you're writing code-as-prose content.
What language dictionaries are available?
English (US and UK) by default. French, German, Spanish, Italian, and Portuguese dictionaries are available on switch. Only one dictionary is active at a time.
Can I export my custom dictionary?
Yes — export as a .txt word list that can be committed to your repository and loaded in CI using markdownlint or Vale with a custom vocabulary file.