A library of useful functions used across various cspell tools.
npm install cspell-libcspell-lib is the workhorse behind cspell. It does all the heavy lifting necessary to spell check files.




```
npm i -S cspell-lib
Here is an example of using spellCheckDocument to spell check some text with a spelling issue.
`ts
import assert from 'node:assert';
import { spellCheckDocument } from 'cspell-lib';
// cspell:ignore wordz coztom clockz cuztom
const customWords = ['wordz', 'cuztom', 'clockz'];
async function checkSpelling(phrase: string) {
const result = await spellCheckDocument(
{ uri: 'text.txt', text: phrase, languageId: 'plaintext', locale: 'en' },
{ generateSuggestions: true, noConfigSearch: true },
{ words: customWords, suggestionsTimeout: 2000 }
);
return result.issues;
}
export async function run() {
console.log(Start: ${new Date().toISOString()});End: ${new Date().toISOString()}
const r = await checkSpelling('These are my coztom wordz.');
console.log();`
// console.log(r);
assert(r.length === 1, 'Make sure we got 1 spelling issue back.');
assert(r[0].text === 'coztom');
assert(r[0].suggestions?.includes('cuztom'));
// console.log('%o', r);
}
`ts
import { resolve } from 'node:path';
import { pathToFileURL } from 'node:url';
import { spellCheckDocument } from 'cspell-lib';
export async function checkFile(filename: string) {
const uri = pathToFileURL(resolve(filename)).toString();
const result = await spellCheckDocument(
{ uri },
{ generateSuggestions: true, noConfigSearch: true },
{ words: customWords, suggestionsTimeout: 2000 }
);
return result.issues;
}
``
Available as part of the Tidelift Subscription.
The maintainers of cspell and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open source packages you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers of the exact packages you use. Learn more.
---
Brought to you by
Street Side Software