{"_id":"@beanbag/codemirror-speak-and-spell","_rev":"2-310e4c84c9b803f98940ee85ec8235b5","name":"@beanbag/codemirror-speak-and-spell","dist-tags":{"latest":"1.0.1"},"versions":{"1.0.0":{"name":"@beanbag/codemirror-speak-and-spell","version":"1.0.0","keywords":["ai","browser","codemirror","javascript","spell checking"],"author":{"url":"https://www.beanbaginc.com","name":"Beanbag, Inc.","email":"questions@beanbaginc.com"},"license":"MIT","_id":"@beanbag/codemirror-speak-and-spell@1.0.0","maintainers":[{"name":"chipx86","email":"christian@beanbaginc.com"},{"name":"trowbrds","email":"david@beanbaginc.com"}],"homepage":"https://github.com/beanbaginc/codemirror-speak-and-spell","dist":{"shasum":"2886d55a710b8b38bb12b963c5f932826d869e26","tarball":"https://registry.npmjs.org/@beanbag/codemirror-speak-and-spell/-/codemirror-speak-and-spell-1.0.0.tgz","fileCount":10,"integrity":"sha512-Zy8iYmSP0n5v+iyjmev+RjT4MUT//56nRpIE2xNeElGgX0HvBjKJyOkVaY4Lm+sDMp6DnOuTc5iZJ27bYAbQtQ==","signatures":[{"sig":"MEUCIQDZy21UVlvmXxWL1rFsiKoxVf+dGAHalZzA2976WjMI6QIgCUA0XKV8Ee8YJj+9Jr1MJzzJOK3aWXMzojZob1HS7Qk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":91001},"main":"lib/cm5/index.js","github":"https://github.com/beanbaginc/codemirror-speak-and-spell","exports":{".":{"import":"./lib/cm5/esm/index.js","require":"./lib/cm5/cjs/index.js"},"./cm5":{"import":"./lib/cm5/esm/index.js","require":"./lib/cm5/cjs/index.js"}},"gitHead":"8214f8d11d6a6439b99aacca47d57546c1d3697a","scripts":{"build":"rollup -c","clean":"rm -rf lib _build","prepare":"npm run build","full-build":"npm run clean && npm run build"},"_npmUser":{"name":"chipx86","actor":{"name":"chipx86","type":"user","email":"christian@beanbaginc.com"},"email":"christian@beanbaginc.com"},"_npmVersion":"10.8.2","description":"Browser-native spell checking, AI writing, and more in CodeMirror v5","directories":{},"_nodeVersion":"20.17.0","_hasShrinkwrap":false,"devDependencies":{"eslint":"^8.57.1","codemirror":"^5","typescript":"^5.8.3","@types/codemirror":"^5.60.16","rollup-plugin-terser":"^7.0.2","@beanbag/eslint-plugin":"^2.0.1","@beanbag/frontend-buildkit":"^1.2.0"},"peerDependencies":{"codemirror":"^5"},"_npmOperationalInternal":{"tmp":"tmp/codemirror-speak-and-spell_1.0.0_1750985157378_0.9586241107919939","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@beanbag/codemirror-speak-and-spell","version":"1.0.1","description":"Browser-native spell checking, AI writing, and more in CodeMirror v5","homepage":"https://github.com/beanbaginc/codemirror-speak-and-spell","github":"https://github.com/beanbaginc/codemirror-speak-and-spell","keywords":["ai","browser","codemirror","javascript","spell checking"],"author":{"name":"Beanbag, Inc.","email":"questions@beanbaginc.com","url":"https://www.beanbaginc.com"},"license":"MIT","main":"lib/cm5/index.js","exports":{".":{"import":"./lib/cm5/esm/index.js","require":"./lib/cm5/cjs/index.js"},"./cm5":{"import":"./lib/cm5/esm/index.js","require":"./lib/cm5/cjs/index.js"}},"scripts":{"build":"rollup -c","clean":"rm -rf lib _build","full-build":"npm run clean && npm run build","prepare":"npm run build"},"devDependencies":{"@beanbag/eslint-plugin":"^2.0.1","@beanbag/frontend-buildkit":"^1.2.0","@types/codemirror":"^5.60.16","codemirror":"^5","eslint":"^8.57.1","rollup-plugin-terser":"^7.0.2","typescript":"^5.8.3"},"peerDependencies":{"codemirror":"^5"},"_id":"@beanbag/codemirror-speak-and-spell@1.0.1","gitHead":"857227db8b872dcca3ec45ae67775312ea710d05","_nodeVersion":"20.17.0","_npmVersion":"10.8.2","dist":{"integrity":"sha512-uWNdiEVtTnK3TbPbwTqpKO2kwrls8IsEx84riXDr+BWUlNz42ueJReBtSsCbsUP1Jalo+DZyoY1/8T+AtyM3Ug==","shasum":"26c02013911c391311f4ef802fd4307dd5684765","tarball":"https://registry.npmjs.org/@beanbag/codemirror-speak-and-spell/-/codemirror-speak-and-spell-1.0.1.tgz","fileCount":10,"unpackedSize":91132,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIC22bRHjFen9w4wxycrZjyiV32xVioU7MhLgpw2vCTyzAiEA6DqdTVp5dKHpodGtVS9+e3YlV8kavmaQGIBkcJI7Ccs="}]},"_npmUser":{"name":"chipx86","email":"christian@beanbaginc.com","actor":{"name":"chipx86","email":"christian@beanbaginc.com","type":"user"}},"directories":{},"maintainers":[{"name":"chipx86","email":"christian@beanbaginc.com"},{"name":"trowbrds","email":"david@beanbaginc.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/codemirror-speak-and-spell_1.0.1_1750985408186_0.016848121975906682"},"_hasShrinkwrap":false}},"time":{"created":"2025-06-27T00:45:57.262Z","modified":"2025-06-27T00:50:08.625Z","1.0.0":"2025-06-27T00:45:57.560Z","1.0.1":"2025-06-27T00:50:08.397Z"},"author":{"name":"Beanbag, Inc.","email":"questions@beanbaginc.com","url":"https://www.beanbaginc.com"},"license":"MIT","homepage":"https://github.com/beanbaginc/codemirror-speak-and-spell","keywords":["ai","browser","codemirror","javascript","spell checking"],"description":"Browser-native spell checking, AI writing, and more in CodeMirror v5","maintainers":[{"name":"chipx86","email":"christian@beanbaginc.com"},{"name":"trowbrds","email":"david@beanbaginc.com"}],"readme":"# CodeMirror Speak-and-Spell\n\nThis is a plugin for CodeMirror v5 that provides more reliable support for:\n\n* The browser's built-in spell checker\n* Speech-to-text input\n* Platform or browser-provided AI-assisted writing\n* Text transformations\n\nIt works in cooperation with CodeMirror v5's ``inputStyle: 'contenteditable'``\nand ``spellcheck: true`` settings, and avoids many of the quirks that could\nsometimes appear.\n\nIt does this by intercepting the browser's attempts at performing these\ntext changes, blocking them and re-attempting them directly using CodeMirror's\nAPI. This keeps CodeMirror and the browser from fighting with each other\nany time text is being inserted or replaced by the browser.\n\n\n## Installation and Usage\n\nThere are two ways you can use this plugin:\n\n1. Simply download the latest script from our releases or our repository's\n  `build/` directory and embed it in your page.\n\n   For example:\n\n   ```html\n   <script src=\"/js/beanbag-codemirror-speak-and-spell-cm5-1.0.0.min.js\"></script>\n   ```\n\n2. Alternatively, install using `npm`:\n\n   ```shell\n   $ npm install --save @beanbag/codemirror-speak-and-spell\n   ```\n\n   And then import into another module:\n\n   ```javascript\n   import { SpeakAndSpell } from '@beanbag/codemirror-speak-and-spell/cm5';\n   ```\n\nOnce installed and running in your CodeMirror v5 environment, simply activate\nit:\n\n```javascript\nconst codeMirror = new CodeMirror(element, {\n    inputStyle: 'contenteditable',\n    spellcheck: true,\n    speakAndSpell: true,\n});\n```\n\n\n## License\n\nCodeMirror Speak-and-Spell is available under the MIT license.\n\n\n## Important Notes\n\nNot all browsers implement spell checking the same way.\n\nFirefox will check the text in your CodeMirror immediately when rendered,\nbut Chrome and Safari usually won't. Instead, they'll check when typing\nor when interacting with a word.\n\nThis means that you won't always see misspelled words on Chrome or Safari\nimmediately, but this is browser behavior and not something that can be\nworked around. It's also not specific to CodeMirror.\n\nTo ensure the best experience, you'll want the latest evergreen versions of\nFirefox and Chrome, and the latest OS releases of Safari.\n\n\n## Our Other Projects\n\n* [Review Board](https://www.reviewboard.org) -\n  Our open source, extensible code review, document review, and image review\n  tool.\n\n* [Djblets](https://github.com/djblets/djblets/) -\n  Our pack of Django utilities for datagrids, API, extensions, and more. Used\n  by Review Board.\n\n* [Spina](https://github.com/beanbaginc/spina) -\n  A modern Backbone-like class library, built with TypeScript and extensibility\n  in mind.\n\n* [Ink](https://github.com/beanbaginc/ink) -\n  The accessible, themeable UI component library powering Review Board.\n\n* [Housekeeping](https://github.com/beanbaginc/housekeeping) -\n  Deprecation management for Python modules, classes, functions, and\n  attributes.\n\n* [kgb](https://github.com/beanbaginc/kgb) -\n  A powerful function spy implementation to help write Python unit tests.\n\n* [Typelets](https://github.com/beanbaginc/python-typelets) -\n  Type hints and utility objects for Python and Django projects.\n\nYou can see more on [github.com/beanbaginc](https://github.com/beanbaginc) and\n[github.com/reviewboard](https://github.com/reviewboard).\n","readmeFilename":"README.md"}