The most time-consuming part of my work isn't the hard stuff. It's retyping the same sentences.
When I write product listings, it's the same phrases over and over — "Durable and lightweight, perfect for daily use." When I answer support emails, half the sentences are identical: apologies, shipping delays, return policies.
I started with a text file and copy-paste. Then OS-level snippets — but they fall apart the moment I switch languages, and I work across English, Japanese and Chinese every day.
I tried TextExpander and Magical. Both are powerful. Both are subscriptions starting around $10/month. I just wanted something dumb and simple: no account, no cloud sync, no update popups. Pay once.
Couldn't find it, so I built it. A browser extension — type a short code you define, hit space, it expands into full text. Works in any input field on any site. Fully local, nothing leaves your machine.
Free tier holds 5 shortcuts. Pro is $9.90 one-time. It's on the Edge add-ons store: https://microsoftedge.microsoft.com/addons/detail/jfhfkebcjclljnbphhbpihcohnpobloa
I'm not here to sell you anything though. I want to ask: how do you handle repetitive typing? Am I missing some obvious tool that everyone else is already using?
The local-first approach is what caught my attention. A lot of productivity tools seem to add accounts, syncing, subscriptions, and extra features when the core problem is actually very simple. Keeping the workflow fast and offline makes a lot of sense, especially for repetitive support and product-description work.
Solving multilingual expansion without relying on OS-level snippets or cloud subscriptions is a fantastic sweet spot. The friction of constant language-switching is real.
Also, as Luca mentioned, adding a simple local JSON import/export early on will give users peace of mind without compromising the local-first philosophy. Great build!
Most founders building alongside a day job focus entirely on non-compete clauses, but corporate legal teams usually catch engineers through environment configuration leaks, not contract disputes: Global Git Email Stamping: If you don't use directory-scoped configs ([includeIf]), git defaults to your global .gitconfig. Committing to a personal repo with a work email header gives enterprise legal instant ownership grounds. Shared Router DNS Traffic: Working on a personal side-project while connected to enterprise VPN/Zscaler routes your dev traffic straight through corporate log collectors. EDR Process Isolation: Enterprise agents (CrowdStrike, SentinelOne) log local npm installs and CLI commands on monitored networks. I put together a step-by-step air-gap checklist and template config on my profile if you want to inspect your own setup.
Have early users shown that the local, one-time model is what makes them switch, or is the main pull simply having text expansion without the complexity of bigger tools?
Relatable. Support is where this hurts most. The other half of the fix is on the intake side: if the contact form asks the right questions up front (order number, what happened), a lot of those repeated "can you send me X?" replies disappear. That's what we work on at chatform.in (I work on it). Nice build, multilingual snippets without an account is a real gap.
The local-first, one-time-price positioning is strong, especially for multilingual users. I’d add simple JSON export/import early—“no cloud” is a benefit until someone changes browsers or devices and worries about losing years of shortcuts.