Hemingway AI
hellohemingway.com- Category
- Developer Tools
- Rank
- No. 3395Tools index
Previous survey · No. 3275 ·
- Pricing
- Open Source
- Type
- TOOL
- Use case
- Coding
- Interfaces
- Web
- Builder
- hunterassembly
- GitHub
- 5 stars
- Date
About
An AI-powered copy editor that turns your local development site into an interactive editing surface. Click any text element to get Claude-generated alternatives that are context-aware and automatically write changes back to your source files.
What it does
Hemingway is a development-time overlay for marketing pages. Toggle it with a keyboard shortcut, pick a headline or paragraph in the browser, and a small local server asks Anthropic's model for three rewrites, each tagged with a strategy: clarity, specificity or conversion. Choose one and the page updates, then the server hunts through your project for the original string and swaps it in the code. It runs as a separate process for any framework, or inside a Next.js app through bundled route handlers.
Why it's ranked here
The interesting part is the prompt, not the overlay. Each request carries the page's role for that element, a short story of the whole page, nearby sections, your own voice documents and a tally of which strategy you picked before, so the rewrites are shaped by position and purpose rather than just the sentence. That is a specific, useful idea for anyone iterating on landing page copy. The limits are real, though: a noncompete license, a single model provider, and a file writer that guesses where text lives.
What's good
Setup is light: one package, a generated config file, and either a script tag or a React component. Selecting up to five elements at once gets coordinated rewrites, and there are five levels of undo and redo. Rejected options are fed back so a regeneration produces different ones, and you can add a note steering the next batch. Configuration layers cleanly, with environment variables beating local settings, the config file and the package manifest. The package declares no runtime dependencies at all.
Tradeoffs
The license is PolyForm Shield, which forbids using the software to build anything that competes with it, so this is not open source in the usual sense. Only Anthropic is supported, called directly over HTTP. Writing back is a text search: when the same phrase appears in several files, a proximity score on nearby tag and class names picks the winner, which can pick wrong. The local server allows requests from any origin while it can edit files and accept an API key. The package manifest defines no test script.
How to use it well
Best for a developer or founder polishing a marketing site they build locally, especially on Next.js where the single-process mode avoids a second server. Write a real style guide and copy methodology document first, since the prompt leans on them heavily. Commit before a session so every written change shows up as a reviewable diff. Keep it to development builds and do not expose the local server on a shared network. It does not help with app interface text, translations or content stored in a CMS.
Technical notes+
src/server/generate.ts assembles a tiered system prompt (instructions, element briefing, page-story brief, learned style preferences, style guide, copy bible, reference guide), demands strict JSON with exactly three alternatives labelled by the STRATEGY_LANES constant, truncates section HTML at 3000 characters, and calls the Anthropic Messages API via fetch with max_tokens 1024; guide files are cached with mtime checks plus fs.watch invalidation. src/server/write.ts implements its own glob and brace expansion, tries exact, HTML-entity and curly-quote variants, falls back to whitespace-normalized matching, and ranks candidates with scoreMatch (+10 tag, +5 per class for up to three classes, +3 parent tag within 200 characters). src/server/config.ts falls back to evaluating the config module with new Function when dynamic import fails. src/client/overlay.ts caps selection and undo at five via MAX_MULTI_SELECT and MAX_UNDO_STEPS and listens for the shortcut in the capture phase. docs/reference/architecture.md states CORS is open to any origin.
Observed
- License
- PolyForm Shield 1.0.0, with a noncompete clause (LICENSE)
- Language
- TypeScript, built to ES modules with tsup
- Packaging
- npm package with a CLI binary plus React, client and Next.js subpath exports (package.json)
- Interfaces
- Standalone local HTTP server, script tag, React component, Next.js route handlers
- Model provider
- Anthropic Messages API only, called directly (src/server/generate.ts)
- Runtime dependencies
- None declared; React is an optional peer dependency
- Tests
- No test script defined in package.json
- API key storage
- Environment variable or a gitignored local JSON settings file (src/server/config.ts)
Read from README.md, package.json, docs/reference/architecture.md, docs/getting-started/quickstart.md, src/server/generate.ts, src/server/write.ts, src/server/config.ts, src/client/overlay.ts, docs/configuration.md, LICENSE.
What it can do
Generate alternative copy suggestions for text elements
Selected text element from web page → AI-generated text alternatives
Edit text content directly on development site
Click interaction on any text element → Interactive editing interface
Automatically update source files with changes
Edited text content from web interface → Modified source code files
Provide context-aware copy suggestions
Text element and surrounding page context → Contextually relevant text alternatives
Integrate AI editing with local development environment
Local development site and web framework → AI-powered editing capabilities on live site
Tags
Tech Stack
Media

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