- Category
- Productivity
- Rank
- No. 905Tools index
- Pricing
- Open Source
- Type
- TOOL
- Builder
- coollabsio
- GitHub
- 29 stars
- Latest release
- v2.4.0
- Date
About
Grammarly alternative where you own what you type on your keyboard.
What it does
Safetyper adds a floating grammar-check control beside editable fields in Chrome and Firefox. You can check an entire field or selected text, then inspect word-level highlighted changes. Requests go through OpenRouter, Groq, or a locally running Ollama model, with provider and model choices configured in the extension.
Why it's ranked here
The strongest case is practical control over the correction engine. Users can switch between two hosted providers and local Ollama, while retaining one in-page workflow. Thoughtful handling of selections, input methods, caching, and complex editors adds substance. Broad page access and manual local-model setup keep it from being effortless.
What's good
It handles text inputs, text areas, content-editable regions, and textbox roles while skipping read-only controls, tiny verification fields, and fields that disable spellchecking. It respects input method composition, adapts icon placement to scrolling and field size, caches repeated corrections, highlights word changes, validates hosted-provider key formats, and rate-limits requests.
Tradeoffs
The extension requests access across all URLs plus storage, scripting, and tabs permissions. Hosted correction requires your own OpenRouter or Groq key. Ollama avoids that key requirement, but browser-origin access needs extra configuration and the documented shortcut allows every origin. Checks stop at 5,000 characters and ten requests per minute. Complex editors may offer copying instead of direct replacement.
How to use it well
Use it for short web writing when you want selectable model providers and can manage an API key or local Ollama service. Review the highlighted diff before applying corrections, especially with rich editors. The local route best suits privacy-sensitive workflows. It does not replace a document editor, collaboration suite, or broader writing workspace.
Technical notes+
wxt.config.ts defines a WXT extension with Svelte support, Chrome and Firefox configuration, broad host permissions, and extension-page CSP. src/entrypoints/content.ts installs editable-field, selection, composition, resize, and scroll listeners. src/entrypoints/background.ts owns provider requests, local storage access, model-list caching, sender validation, and a ten-request-per-minute in-memory limiter. src/lib/content/api-client.ts enforces the 5,000-character ceiling and caches corrections by model, prompt, and text. src/lib/content/diff-engine.ts computes a token-level dynamic-programming diff, while src/lib/content/dom-utils.ts handles editor detection, extraction, replacement, positioning, and HTML escaping. package.json exposes WXT development, build, zip, lint, formatting, and Svelte type-checking scripts.
Observed
- License
- Apache-2.0
- Primary language
- TypeScript, with Svelte 5 for extension interfaces
- Interface
- Browser extension with in-page controls, a settings popup, and onboarding UI
- Browser support
- Chrome and Firefox
- AI providers
- OpenRouter, Groq, and local Ollama
- Build and packaging
- Private ES module package built and zipped with WXT; Bun or Node.js 18+ is documented
- Quality checks
- Scripts provide ESLint, Prettier checks, and Svelte type checking
Read from README.md, package.json, src/entrypoints/content.ts, src/entrypoints/background.ts, src/lib/content/types.ts, src/lib/content/config.ts, src/lib/content/dom-utils.ts, src/entrypoints/popup/main.ts, src/lib/content/api-client.ts, src/lib/content/ui-manager.ts, src/lib/content/diff-engine.ts, src/lib/content/state-manager.ts, src/entrypoints/onboarding/main.ts, wxt-env.d.ts, wxt.config.ts.
What it can do
Check grammar and spelling while typing
Text typed on keyboard → Grammar and spelling corrections
Suggest writing improvements
Written text → Style and clarity suggestions
Store typing data locally
User's typed content → Locally stored data without external transmission
Provide real-time writing feedback
Live typing input → Instant corrections and suggestions
Protect user privacy during text analysis
Typed text content → Private analysis without data sharing
Tags
Tech Stack
Media

Comments (0)
No comments yet
Editorially curated, with community endorsements as a secondary signal. Corrections welcome.
