I built an offline Grammarly alternative and converted it to a Mac app without coding

I wrote this entire article while sitting on a plane with unusually high turbulence. The software I used for spell-checking and cleaning up drafts was developed at the airport. The language engine works perfectly on my Mac, completely offline, correcting all my typos and removing double spaces while I type on the keyboard and drink sugar bomb coffee.
Also, I don’t know how to code. I didn’t write a single line of code, and yet, the Mac software I’m using right now looks and feels much faster than Grammarly’s predecessor. Grammarly, if you don’t know, is one of the most popular spelling and grammar checking apps in the world. So, how did I do it? I asked Claude. I explained my desire, it asked my preferences, and in less than 30 minutes, I created an offline Grammarly while avoiding the curse of “subscribing more”.
The first version works as its own website in a browser tab without an internet connection. The second version lives as a Chrome extension, and works well when the device is offline. Finally, I went ahead and built myself a full Mac app that sits as a menu bar utility. I had half a dozen people test this on both Mac and Windows machines. They were very impressed with the speed and accuracy of the tool.
Solving my problems, or controlling my bad habits
Over the past few weeks, I’ve dipped my toes (all my feet, my arm, and my neck) into the world of app development. My first test was a Mac app that used the motion sensors built into the AirPods Pro to track my posture. Basically, the app detects healthy posture, and every time I sneeze or lean forward, it sends an alert. The app is fully functional offline, and all processing takes place entirely on my Mac.

I did it all without seeing the underlying code.
For my next adventure, I thought of building something that would free me from the hassle of being online forever. Since my job as an editor involves writing all day, Grammarly isn’t short on life, despite some of its shady shenanigans lately. I often lost pieces of text in the Grammarly iPad app because the cloud sync didn’t work. On days when I have my trusty Mac with me, getting a stable internet connection is a constant headache.
All I want is to sit back, write a few articles, and have my trusty grammar checker work its magic as I furiously speed away at the laptop’s mushy keyboard. But it is not the only issue. Staying connected to the Internet (while doing your job as a Chrome extension in Google Docs) also means an endless stream of distracting apps. And yes, it’s just one browser tab away from a robust Google Search and deep into a doomscrolling bender on X, YouTube, or any other digital vice.
I still can’t believe it.

But why, you might ask? First, because I can finally build my own software that fits my specific needs. Second, I’m tired of private compromises. Of course, not having to pay for another app is a huge incentive. But most of all, it’s the fulfillment of being in control of your daily commute (or at least part of it) that really motivates me, and I’m not stopping anytime soon.
What was the process like?
I’ll let the picture below do the talking. I ported the Claude mobile app to an Android tablet to build a piece of Mac software. And on the first try, my Grammarly alternative created by Claude worked very well. Actually, I built three. One of them works completely offline, another requires an internet connection, and the third is a proper macOS app that sits as a menu bar utility.
The latter combines the concept of note-taking and language editing into a single, complete one-click Apple Notes export tool. This required me to fire up Xcode and create a dedicated app icon, again, which Claude was happy to do. But here is the broader truth. The bar of “building” products has never been simpler, and it has never been more versatile. A year ago, if you told me that I would make such a powerful tool for macOS on an Android tablet, without writing a line of code, I would have laughed in your face.

When I introduced Claude, I simply told my needs. Claude suggested three ways to build my offline grammar checker, and I chose the one that works without an internet connection, with the least problems, and above all, it must be fast. Originally I wanted to use Apple’s base models on the device (shipped with Apple Intelligence). It worked, but it was slow. Claude recommended that I go with the Harper Automattic engine. At first, the tool, which I named InkWell, required an Internet connection.
The entire package came in at less than 10 megabytes in size. But I wanted something that could work without an internet connection. Claude suggested that it could actually include the Harper engine inside the file package so that the tool (now called Quill) doesn’t need an internet connection at all. Only evil? The file size swells to 25 megabytes. Concerns about an AI endpoint are almost laughable. We live in an age where even basic computing applications carry hundreds of megabytes of local storage, so 25MB was nothing.
The big problem with AI

So, I’ve been using Grammarly for years, but in the last few years, as the company has become more reliant on AI, some of the grammar suggestions and recommendations have become more worrisome. And in a fair number of cases, I’ve also noticed that Grammarly does a poor job of even the most basic type of spell check.
Harper avoids the verbose recommendations and increasingly suggestive AI language you can find in the likes of ChatGPT and Gemini. It’s a tool that doesn’t rely on token-based language prediction, but more on hard-coded language and programming rules. This is exactly what I want.
I want the AI to catch a misspelling, or a missing period here and there. That’s all. I don’t want (and will never take) an AI recommendation to change my voice. Harper, however, is not perfect, and neither are the tools I’ve built using the word engine. For example, when I test this sentence, “My name is John. What’s your name? What day is today,” the Harper engine flags as excellent. But these mistakes are rare.

On the other hand, the Harper engine takes only 20 milliseconds to identify errors and make language suggestions. “Harper combines fast performance with a privacy-first design, ensuring that all processing takes place locally on your device to keep user data completely private. It’s also completely open source,” said Automattic, the company that acquired Harper in 2024.
Those are reasonable advantages, and the fact that it can be used inside a small package and without any Internet connection is a big inspiration. Of course, building a tool with three different modes of operation, and without writing any code, is the biggest approach you take here. Claude puts the power in the hands of the average computer user like me, and you. Naturally, I can’t wait to start my next app project with it



