{"id":61470,"date":"2026-10-05T12:03:03","date_gmt":"2026-10-05T12:03:03","guid":{"rendered":"https:\/\/www.threatshub.org\/blog\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\/"},"modified":"2026-10-05T12:03:03","modified_gmt":"2026-10-05T12:03:03","slug":"how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code","status":"publish","type":"post","link":"https:\/\/www.threatshub.org\/blog\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\/","title":{"rendered":"How I made a paid Mac app in 11 days with Claude \u2013 without writing a single line of code"},"content":{"rendered":"<h3 class=\"wp-block-heading\">ZDNET\u2019s key takeaways<\/h3>\n<ul class=\"wp-block-list\">\n<li>I shipped a Mac app without writing a single line of code.<\/li>\n<li>Vibe coding took 502 directives, not one magic prompt.<\/li>\n<li>App Store promo images took almost as long as the app.<\/li>\n<\/ul>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n<p>At around noon on Sunday, Sept. 20, I came up with an idea for a Mac app. One week later, on Sunday, Sept. 27, also around noon, I submitted my completed app to Apple. Four days later, Apple accepted the tool, and <a data-wp-interactive=\"zd\/analytics\" data-wp-on--click=\"actions.trackClick\" data-zd-otc=\"1\" data-zd-track-action-outcome=\"outbound_click\" data-zd-track-event=\"select_item,view_item\" data-zd-track-item-category=\"MANUAL-OFFER-NO-PRODUCT-CATALOG-ENTRY\" data-zd-track-item-list-index=\"null\" data-zd-track-item-name=\"https:\/\/apps.apple.com\/us\/app\/icon-gallery-97\/id6815353426\" data-zd-track-location-id=\"BODY\" data-zd-track-module=\"LINK\" data-zd-track-outbound-url=\"https:\/\/cc.zdnet.com\/v1\/otc\/00hQi47eqnEWQ6T9d4QLBUc?url=https%3A%2F%2Fapps.apple.com%2Fus%2Fapp%2Ficon-gallery-97%2Fid6815353426&amp;u=https%3A%2F%2Fwww.zdnet.com%2Finnovation%2Fclaude-code-vibe-coding-mac-app%2F\" data-zd-track-page-uuid=\"1347587|3\" data-zd-track-raw-outbound-url=\"https:\/\/cc.zdnet.com\/v1\/otc\/00hQi47eqnEWQ6T9d4QLBUc?url=https%3A%2F%2Fapps.apple.com%2Fus%2Fapp%2Ficon-gallery-97%2Fid6815353426&amp;u=https%3A%2F%2Fwww.zdnet.com%2Finnovation%2Fclaude-code-vibe-coding-mac-app%2F\" data-zd-track-raw-url=\"https:\/\/apps.apple.com\/us\/app\/icon-gallery-97\/id6815353426\" rel=\"nofollow noopener sponsored\" href=\"https:\/\/cc.zdnet.com\/v1\/otc\/00hQi47eqnEWQ6T9d4QLBUc?url=https%3A%2F%2Fapps.apple.com%2Fus%2Fapp%2Ficon-gallery-97%2Fid6815353426&amp;u=https%3A%2F%2Fwww.zdnet.com%2Finnovation%2Fclaude-code-vibe-coding-mac-app%2F\">it went live on the App Store<\/a>.<\/p>\n<p><strong>Also: <a href=\"https:\/\/www.zdnet.com\/tech\/apple-a-day-ai-agentic-coding-iphone-ios-mac-apps\/\">AI completely changed how I develop iPhone apps \u2026 and I think I love it<\/a><\/strong><\/p>\n<p>This is the story of an unrelated assignment by a ZDNET editor, a happy accident, and vibe coding at its best. It began 30 years ago, with a giant library of icons.<\/p>\n<div class=\"wp-block-ziff-davis-exco-video is-injected\" id=\"exco-video-block-6a8e06fe4d2cfb09fd68fb54-1347587-1\" data-exco-video-id data-exco-playlist-id=\"6a8e06fe4d2cfb09fd68fb54\" data-exco-video-title data-exco-video-src data-exco-video-duration=\"0\" data-exco-video-poster data-exco-suppress-ads=\"0\" data-exco-autoplay=\"0\" data-exco-sticky=\"1\">\n<p class=\"exco-video__eyebrow\">More from ZDNET<\/p>\n<\/p><\/div>\n<h2 class=\"wp-block-heading\">Icons were good to me<\/h2>\n<p>When I started my first software company, one of the first products I introduced was Icon Factory for HyperCard. It won several awards. This product supported my company and our employees for years. Those icons were all black and white, as was HyperCard.<\/p>\n<p><strong>Also:&nbsp;<a href=\"https:\/\/www.zdnet.com\/innovation\/vibe-codings-intoxicating-magical-rush-hides-the-real-work-nobody-talks-about\/\">After the vibe-coding rush comes the debugging hangover<\/a><\/strong><\/p>\n<p>In 1997, after years of customer requests for colorful Finder desktop icons, we created a three-volume set of 32\u00d732 pixel color icons called Icon Gallery. This was a boxed product of more than 2,000 icons. Icon Gallery sold through retail, mail order distribution, and direct mail.<\/p>\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" height=\"640\" width=\"1024\" src=\"https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-7.png?w=864\" alt class=\"wp-image-1347589\" srcset=\"https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-7.png 2880w, https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-7.png?resize=300,188 300w, https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-7.png?resize=768,480 768w, https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-7.png?resize=1024,640 1024w, https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-7.png?resize=1536,960 1536w, https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-7.png?resize=2048,1280 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\"><figcaption class=\"wp-element-caption\">Icon Gallery original box, compared with the app I just built and published.<span class=\"zd-image-credit\">David Gewirtz\/ZDNET<\/span><\/figcaption><button type=\"button\" class=\"zd-image-zoom\" data-action=\"enlarge-image\" aria-label=\"Enlarge image\"><\/button><\/figure>\n<p>Icon Gallery was one of the last boxed software products I produced. I\u2019ll be honest with you. I can\u2019t recall when or why I stopped selling Icon Gallery, but it probably tracked with when I stopped physically manufacturing boxed products. That decision, of course, tracked with the rise of the web.<\/p>\n<p>Now, let\u2019s fast forward to a few months ago. While decluttering some cubbies in my office, I found the packaging for a couple of my old software products, including Icon Gallery. I stuck the box on a shelf. Once again, I pretty much forgot about it.<\/p>\n<p>Then, last month, in honor of <a href=\"https:\/\/www.zdnet.com\/business\/everything-apple-announced-at-its-iphone-18-event-duo\/\">this year\u2019s big iPhone event<\/a>, my editor asked me to write a series of historical Apple stories. While writing \u2018<a href=\"https:\/\/www.zdnet.com\/tech\/apple-a-day-ai-agentic-coding-iphone-ios-mac-apps\/\">AI completely changed how I develop iPhone apps \u2026 and I think I love it<\/a>,\u2019 I dug through my server for a screenshot or box illustration of <a href=\"https:\/\/www.zdnet.com\/innovation\/how-apple-accidentally-turned-the-mac-into-an-absolute-ai-monster\/\">an AI product I produced for the Mac in the late 1980s<\/a>.<\/p>\n<p><strong>Also:&nbsp;<a href=\"https:\/\/www.zdnet.com\/article\/i-used-claude-code-to-vibe-code-mac-app\/\">I used Claude Code to vibe code a Mac app in 8 hours, but it was more work than magic<\/a><\/strong><\/p>\n<p>I found that image, and I also found an old <a href=\"https:\/\/en.wikipedia.org\/wiki\/Macromedia_Director\" target=\"_blank\" rel=\"noopener\">Macromedia Director<\/a> file containing all 2,338 icons from 30 years ago. In the mid-90s, I had converted Icon Gallery\u2019s icons to Director format and sold the resulting product to animators as an asset library. Director was big in the CD-ROM days, and has since faded into Mac history along with HyperCard and other vintage apps.<\/p>\n<p>But there it was, sitting on my <a href=\"https:\/\/www.zdnet.com\/article\/best-macbooks\/\">Mac Studio\u2019s desktop<\/a>: a 30-year-old file containing all those assets, in a long-dead file format. I felt like an archeologist cracking open an ancient mummy\u2019s tomb.<\/p>\n<h2 class=\"wp-block-heading\">Claude is my friend<\/h2>\n<p>So, I gave that ancient file to <a href=\"https:\/\/www.zdnet.com\/innovation\/anthropic-claude-opus-5-5-fable-5-1-performance-costs-less\/\">Claude<\/a>. My prompt was simple: \u201cThis file is an old Macromedia Director file containing a large library of icons. Can you separate the icons into their own folder?\u201d<\/p>\n<p>Claude didn\u2019t put up a fuss. The AI didn\u2019t complain that the Director files were so wildly out of date that it couldn\u2019t do anything. All it asked was what format I wanted the files in, and whether I wanted the white edge pixels to be transparent.<\/p>\n<p><strong>Also:&nbsp;<a href=\"https:\/\/www.zdnet.com\/article\/xcode-26-3-vibe-coding-app-by-voice\/\">I built an iOS app in just two days with just my voice \u2013 and it was electrifying<\/a><\/strong><\/p>\n<p>According to the log, this process took four minutes and 30 steps. In less time than it takes to brew a cup of coffee, I had 2,000-plus PNG images, organized into topic folders. I didn\u2019t really have any plans for the icons. I was mostly surprised at how easily Claude extracted bit data and converted it into PNG files.<\/p>\n<p>That was on Sept. 2. I then let the extracted collection of vintage files sit in a folder on my Desktop.<\/p>\n<h2 class=\"wp-block-heading\">There could be an app for that<\/h2>\n<p>Eighteen days later, on a Sunday afternoon, I needed a graphic for something I was working on. I thought about my old icons from Icon Gallery and thought, \u201cHey, it would be cool if I had an app to browse and resize these icons.\u201d<\/p>\n<p>And, in that moment, Icon Gallery \u201897 was born. Why not, right? I have AIs.<\/p>\n<p>I worked in both <a href=\"https:\/\/www.zdnet.com\/article\/chatgpt-work-claude-cowork\/\">Claude Desktop<\/a> (to talk strategy) and <a href=\"https:\/\/www.zdnet.com\/innovation\/claude-code-revised-projects-threads\/\">Claude Code<\/a> (to build the Mac app). Within a few hours, I had a working Mac app that could browse the original library and create perfectly scaled, hard-edge bitmap icons from 32\u00d732 pixels up to 1,024\u00d71,024 pixels.<\/p>\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" height=\"640\" width=\"1024\" src=\"https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-3.png?w=864\" alt class=\"wp-image-1347591\" srcset=\"https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-3.png 2880w, https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-3.png?resize=300,188 300w, https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-3.png?resize=768,480 768w, https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-3.png?resize=1024,640 1024w, https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-3.png?resize=1536,960 1536w, https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-3.png?resize=2048,1280 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\"><figcaption class=\"wp-element-caption\">Pixels scale to full size (App Store graphic).<span class=\"zd-image-credit\">David Gewirtz\/ZDNET<\/span><\/figcaption><button type=\"button\" class=\"zd-image-zoom\" data-action=\"enlarge-image\" aria-label=\"Enlarge image\"><\/button><\/figure>\n<p>I officially had a proof of concept.<\/p>\n<p>But how would I productize it? Claude recommended two viable courses of action. The AI recommended naming the product <a data-wp-interactive=\"zd\/analytics\" data-wp-on--click=\"actions.trackClick\" data-zd-otc=\"1\" data-zd-track-action-outcome=\"outbound_click\" data-zd-track-event=\"select_item,view_item\" data-zd-track-item-category=\"MANUAL-OFFER-NO-PRODUCT-CATALOG-ENTRY\" data-zd-track-item-list-index=\"null\" data-zd-track-item-name=\"https:\/\/apps.apple.com\/us\/app\/icon-gallery-97\/id6815353426\" data-zd-track-location-id=\"BODY\" data-zd-track-module=\"LINK\" data-zd-track-outbound-url=\"https:\/\/cc.zdnet.com\/v1\/otc\/00hQi47eqnEWQ6T9d4QLBUc?url=https%3A%2F%2Fapps.apple.com%2Fus%2Fapp%2Ficon-gallery-97%2Fid6815353426&amp;u=https%3A%2F%2Fwww.zdnet.com%2Finnovation%2Fclaude-code-vibe-coding-mac-app%2F\" data-zd-track-page-uuid=\"1347587|3\" data-zd-track-raw-outbound-url=\"https:\/\/cc.zdnet.com\/v1\/otc\/00hQi47eqnEWQ6T9d4QLBUc?url=https%3A%2F%2Fapps.apple.com%2Fus%2Fapp%2Ficon-gallery-97%2Fid6815353426&amp;u=https%3A%2F%2Fwww.zdnet.com%2Finnovation%2Fclaude-code-vibe-coding-mac-app%2F\" data-zd-track-raw-url=\"https:\/\/apps.apple.com\/us\/app\/icon-gallery-97\/id6815353426\" rel=\"nofollow noopener sponsored\" href=\"https:\/\/cc.zdnet.com\/v1\/otc\/00hQi47eqnEWQ6T9d4QLBUc?url=https%3A%2F%2Fapps.apple.com%2Fus%2Fapp%2Ficon-gallery-97%2Fid6815353426&amp;u=https%3A%2F%2Fwww.zdnet.com%2Finnovation%2Fclaude-code-vibe-coding-mac-app%2F\">Icon Gallery \u201897: 30th Anniversary Edition<\/a>, celebrating the hand-created retro icons. This vintage feel could be appealing in <a href=\"https:\/\/www.zdnet.com\/article\/ai-generated-images-are-a-legal-mess-and-still-a-very-human-process\/\">a world of AI-generated art<\/a>.<\/p>\n<p><strong>Also:&nbsp;<a href=\"https:\/\/www.zdnet.com\/article\/claude-code-vibe-code-apple-watch-app-in-hours\/\">I used Claude Code to vibe code an Apple Watch app in just 12 hours<\/a><\/strong><\/p>\n<p>Claude also recommended adding a recoloring feature, so designers could not only choose the old icons, but recolor them to match brand or identity colors. The AI also recommended creating collections and favorites.<\/p>\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" height=\"640\" width=\"1024\" src=\"https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-4.png?w=864\" alt class=\"wp-image-1347592\" srcset=\"https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-4.png 2880w, https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-4.png?resize=300,188 300w, https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-4.png?resize=768,480 768w, https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-4.png?resize=1024,640 1024w, https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-4.png?resize=1536,960 1536w, https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-4.png?resize=2048,1280 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\"><figcaption class=\"wp-element-caption\">How the recoloring feature works (App Store graphic).<span class=\"zd-image-credit\">David Gewirtz\/ZDNET<\/span><\/figcaption><button type=\"button\" class=\"zd-image-zoom\" data-action=\"enlarge-image\" aria-label=\"Enlarge image\"><\/button><\/figure>\n<p>Then a friend recommended I build in an \u2018Export to Slack\u2019 feature, because the retro icons would be very cool as Slack emojis. My wife saw the same potential for dragging the icons into texts. I made sure those features were in the app.<\/p>\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" height=\"640\" width=\"1024\" src=\"https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-5.png?w=864\" alt class=\"wp-image-1347593\" srcset=\"https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-5.png 2880w, https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-5.png?resize=300,188 300w, https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-5.png?resize=768,480 768w, https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-5.png?resize=1024,640 1024w, https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-5.png?resize=1536,960 1536w, https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-5.png?resize=2048,1280 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\"><figcaption class=\"wp-element-caption\">How the Slack emojis work (App Store graphic).<span class=\"zd-image-credit\">David Gewirtz\/ZDNET<\/span><\/figcaption><button type=\"button\" class=\"zd-image-zoom\" data-action=\"enlarge-image\" aria-label=\"Enlarge image\"><\/button><\/figure>\n<p>Once you have favorites and collections, what happens if you want to use the app on another Mac? Ah, so now iCloud syncing needed to be added. And so it was.<\/p>\n<p>Lest anyone imply that <a href=\"https:\/\/www.zdnet.com\/innovation\/vibe-codings-intoxicating-magical-rush-hides-the-real-work-nobody-talks-about\/\">vibe coding<\/a> involves issuing one \u201cMake me an app,\u201d command, let me dissuade you of that notion. I gave Claude Code 502 individual directives in the four days that I actively interacted with it.<\/p>\n<p><strong>Also:&nbsp;<a href=\"https:\/\/www.zdnet.com\/article\/why-most-developers-prefer-claude-code-over-codex\/\">75% of developers I surveyed prefer Claude Code over Codex \u2013 here\u2019s why<\/a><\/strong><\/p>\n<p>These were not full-time coding days. I visited the doctor for my yearly physical, spent Friday with a contractor working on the house, and had to turn in three major feature article thought pieces for ZDNET.<\/p>\n<p>But around that work, I <a href=\"https:\/\/www.zdnet.com\/innovation\/claude-code-revised-projects-threads\/\">talked to Claude and guided its development process<\/a>. Then I went back to my other priorities.<\/p>\n<h2 class=\"wp-block-heading\">Using AI to code a Mac app<\/h2>\n<p>Back when we first started using <a href=\"https:\/\/www.zdnet.com\/article\/top-30-ai-agents-offer-mixed-functionality-autonomy\/\">AI coding agents<\/a>, I developed an internal <a href=\"https:\/\/www.merriam-webster.com\/wordplay\/words-were-watching-headcanon-fanon\" target=\"_blank\" rel=\"noopener\">headcanon<\/a> that helps me think about how to manage the bots. I view them as working partners at the end of a chat transcript. I use this approach to work with many of my human partners, so it works well.<\/p>\n<p>As such, sometimes I fire off a question to Claude Code. In one case, shortly after we built in the in-app purchasing mechanism and proved it worked, I realized that someone could buy the app, do a full icon export, and then request a refund. I asked Claude, \u201cDo we care?\u201d<\/p>\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" height=\"640\" width=\"1024\" src=\"https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-2.png?w=864\" alt class=\"wp-image-1347594\" srcset=\"https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-2.png 2880w, https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-2.png?resize=300,188 300w, https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-2.png?resize=768,480 768w, https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-2.png?resize=1024,640 1024w, https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-2.png?resize=1536,960 1536w, https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/app-store-art-2.png?resize=2048,1280 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\"><figcaption class=\"wp-element-caption\">In-app purchase interface (App Store graphic).<span class=\"zd-image-credit\">David Gewirtz\/ZDNET<\/span><\/figcaption><button type=\"button\" class=\"zd-image-zoom\" data-action=\"enlarge-image\" aria-label=\"Enlarge image\"><\/button><\/figure>\n<p>Claude suggested not fighting refunds. That decision matched with my long-term software publishing style. If someone doesn\u2019t want my code, don\u2019t make them pay for it. But that question fired off a more interesting discovery. Claude realized that all 2,146 icons sat inside the app as loose PNG files. Anyone who downloaded the free version could right-click it, choose Show Package Contents, and copy the entire collection without buying anything.<\/p>\n<p>We added encryption and packaged the app with a single scrambled file. As images are requested, they\u2019re unscrambled dynamically.<\/p>\n<p>Before we submitted the tool to the App Store, we tested it. We deliberately corrupted copies to prove the check would catch them. Then we ran the app\u2019s own decryption engine over every icon. The decrypted output matched the original files, so we shipped it that way.<\/p>\n<p><strong>Also:&nbsp;<a href=\"https:\/\/www.zdnet.com\/innovation\/ai-models-hack-businesses-who-is-responsible\/\">Who\u2019s responsible for catching rogue AI agents? You are<\/a><\/strong><\/p>\n<p>At another point, I realized the window scrolled incredibly slowly. I had to persuade Claude to run some tests. As it turned out, the code compressed full-sized images for each preview, and another block of code rebuilt the entire window 482 times during each resize request.<\/p>\n<p>Persuading Claude became a common theme (very much like working with a human partner). I wanted a selection rectangle that could be dragged across icons. Claude thought this approach was unnecessary. Then I explained that Macs have been able to drag-select since before 1997. Eventually, Claude got that one working.<\/p>\n<p>I\u2019ve said this before, but this is how I spent a lot of my career managing programmers. I\u2019d work with them briefly throughout the day, among all the other activities I managed for the company.<\/p>\n<p><a href=\"https:\/\/www.zdnet.com\/article\/i-used-claude-code-to-vibe-code-mac-app\/\">Vibe coding with Claude<\/a> didn\u2019t seem much different. The AI even pushed back on some instructions, copped a \u2018tude here and there, and complained about some of the assignments. It could totally have been another human at the other end of the chat. In some ways, Claude seemed more human than some people I\u2019ve worked with.<\/p>\n<p><strong>Also:&nbsp;<a href=\"https:\/\/www.zdnet.com\/article\/i-cant-stop-80-of-developers-find-ai-coding-more-addictive-than-helpful\/\">\u2018I can\u2019t stop\u2019: 80% of developers find AI coding more addictive than helpful<\/a><\/strong><\/p>\n<p>Claude also got very fussy about the collection\u2019s provenance. I found it interesting how careful the AI was about making sure the app would get through App Store review. Its concern was who owned the icons. I had to convince it that my company created the icons in the 1990s and that my current business was the legal descendant of the original enterprise. All the assets were mine.<\/p>\n<p>Even so, Claude pointed out some icons Apple was likely to block, including a Caterpillar logo and a person\u2019s head that looked for all the world like Charlie Brown. We also had a bunch of gunshot icons, a popular theme in 1997 but completely tone deaf in 2026. I removed those icons as well.<\/p>\n<p>One really cool advantage of using AI coding is how quickly you can test out ideas. Git can branch code. This capability isn\u2019t AI-related at all, but it means you can revert to a previous codebase or integrate changes. I mixed using Git branches with <a href=\"https:\/\/www.zdnet.com\/article\/4-ways-to-scale-generative-ai-experiments-into-production-services\/\">AI experiments<\/a>. At one point I asked Claude to try a completely different visual design. Claude built it within an hour, and within 30 seconds I decided it was horrid. We were able to revert instantly.<\/p>\n<h2 class=\"wp-block-heading\">App Store learnings<\/h2>\n<p>I am not a complete App Store neophyte, but I might as well be. The last apps I built for the App Store were in 2008. The last payment I got from Apple for those apps was in 2012. The world, and the App Store, have both changed a lot since then.<\/p>\n<p>In preparing my submission to the App Store, I used Claude to walk me through each screen and submission option. I took screenshots of every new screen and sent them to Claude before hitting the confirm or next button. This approach worked quite well.<\/p>\n<p>I also used Claude for advice on setting up the App Store account. The biggest advice I got was that new App Store businesses (those under $1 million in sales) can apply as a small business and commissions will drop from 30% to 15%. That\u2019s a big win.<\/p>\n<p><strong>Also:&nbsp;<a href=\"https:\/\/www.zdnet.com\/article\/how-to-install-configure-claude-code-ai-pricing-developers\/\">How to install and configure Claude Code, step by step<\/a><\/strong><\/p>\n<p>Before submitting the app to the App Store, I instructed Claude to launch a series of adversarial agents to examine the app end to end. Although I\u2019d done a lot of testing, the agents did find a few things that needed to be fixed before submission.<\/p>\n<p>Probably my biggest surprise was the graphics that accompany an App Store submission. Apple allows up to ten 2880\u00d71800 graphics that are displayed with the app in your listing. Creating these graphics took me three days around my other work. In other words, creating the graphics took almost as long as creating the app.<\/p>\n<p>That\u2019s because <a href=\"https:\/\/www.zdnet.com\/article\/can-gemini-chatgpt-claude-analyze-video-this-one-wins-test\/\">Claude, Gemini, and ChatGPT<\/a> were terrible, horrible, unfortunate, ineffective, and overall completely incompetent at creating App Store promo images. While <a href=\"https:\/\/www.zdnet.com\/article\/best-ai-image-generator\/\">I\u2019ve had lots of great success with AI image generation<\/a>, there\u2019s something about getting the message right in an App Store promo image that made the AIs fail. So, I did the work by hand in Photoshop, like a caveman. You can see some of those graphics above, sprinkled throughout this article.<\/p>\n<p>Oh, and here\u2019s a tip. Once you set up TestFlight, which is the tool for sharing your app across users and machines, limit your uploads. On Wednesday, I uploaded 21 builds between 6:49 am and 9:20 pm, while fine-tuning the final look and feel of the submission. Apple refused to accept the twenty-second submission and made me wait a full day to try again.<\/p>\n<p>That pause pushed the whole project back a day.<\/p>\n<p>Here are a few more thoughts:<\/p>\n<ul class=\"wp-block-list\">\n<li>Tell the AI to record every decision in an .MD file<\/li>\n<li>Make the AI measure instead of guess. Metrics work; AI guesses go down pretty much useless rabbit holes.<\/li>\n<li>Use tooling and deterministic analysis rather than just AI. In other words, tell the AI to write Python scripts for results, rather than give its impressions.<\/li>\n<li>Launch subagents after every session to review that session\u2019s work.<\/li>\n<li>Keep an eye on the context usage in each session. Once it reaches about 75%, save progress and restart. The AI starts getting stupider and stupider above 75% context.<\/li>\n<li>Use outside testers. Neither you nor the AI will catch everything.<\/li>\n<\/ul>\n<p>Signing up as an Apple Developer costs $99\/year. Without that, you can\u2019t upload your software to the App Store or use TestFlight.<\/p>\n<p>Look, I don\u2019t know how well the app will do financially, and frankly I don\u2019t care all that much. I\u2019m certainly not expecting it to fund my retirement. But it was a ton of fun and let me productize something I wanted to use for myself. It was also gratifying to give new life to all that creative retro art from the past. The process gave me a safe and controlled way to learn how to code in-app purchases for my other app projects, and it was a great test case for whether you can get AI to help create an app (in the space of a week) that can be submitted and approved by the App Store and Apple (in just another four days).<\/p>\n<p>Oh, and I did not write one line of actual code. Not. One. Line.<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n<p><em>You can follow my day-to-day project updates on social media. Be sure to subscribe to <\/em><a href=\"https:\/\/advancedgeekery.substack.com\/\" target=\"_blank\" rel=\"noopener\"><em>my weekly update newsletter<\/em><\/a><em>, and follow me on Twitter\/X at <\/em><a href=\"https:\/\/twitter.com\/davidgewirtz\" target=\"_blank\" rel=\"noopener\"><em>@DavidGewirtz<\/em><\/a><em>, on Facebook at <\/em><a href=\"https:\/\/www.facebook.com\/davidgewirtz\" target=\"_blank\" rel=\"noopener\"><em>Facebook.com\/DavidGewirtz<\/em><\/a><em>, on Instagram at <\/em><a href=\"https:\/\/www.instagram.com\/DavidGewirtz\/\" target=\"_blank\" rel=\"noopener\"><em>Instagram.com\/DavidGewirtz<\/em><\/a><em>, on Bluesky at <\/em><a href=\"https:\/\/bsky.app\/profile\/davidgewirtz.com\" target=\"_blank\" rel=\"noopener\"><em>@DavidGewirtz.com<\/em><\/a><em>, and on YouTube at <\/em><a href=\"https:\/\/www.youtube.com\/user\/DavidGewirtzTV\" target=\"_blank\" rel=\"noopener\"><em>YouTube.com\/DavidGewirtzTV<\/em><\/a><em>.<\/em><\/p>\n<section class=\"zd-disqus\" data-zd-disqus data-disqus-shortname=\"zdnet-1\" data-disqus-identifier=\"1347587\" data-disqus-url=\"https:\/\/www.zdnet.com\/innovation\/claude-code-vibe-coding-mac-app\/\" data-disqus-title=\"How I made a paid Mac app in 11 days with Claude \u2013 without writing a single line of code\" data-disqus-api-key=\"y0Dp0T6itn9rbTvSf2xkzkhaUL7c5EJsmaWF3XYBqXNz8GHH7wSX1nXi4qzdihWV\" data-disqus-show-label=\"Show Comments\" data-disqus-hide-label=\"Hide Comments\"> <button type=\"button\" class=\"zd-disqus__toggle\" data-zd-disqus-toggle aria-expanded=\"false\"> <span class=\"zd-disqus__toggle-text\" data-zd-disqus-label>Show Comments<\/span> <svg class=\"zd-disqus__toggle-icon\" width=\"14\" height=\"14\" viewBox=\"0 0 14 14\" aria-hidden=\"true\" focusable=\"false\"> <path d=\"M7 1 V12.5 M2.5 8 L7 12.5 L11.5 8\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" \/> <\/svg> <\/button> <\/p>\n<div class=\"zd-disqus__panel\" data-zd-disqus-panel hidden>\n<p class=\"zd-disqus__consent\" data-zd-disqus-consent hidden>Please accept cookies to view the comments powered by Disqus.<\/p>\n<\/p><\/div>\n<p> <noscript>Please enable JavaScript to view the comments powered by Disqus.<\/noscript> <\/section>\n<div class=\"articleAuthorBioFooter-container\">\n<div class=\"articleAuthorBioFooter\">\n<div class=\"articleAuthorBioFooter_body\">\n<div class=\"articleAuthorBioFooter_nameBlock\">\n<div class=\"c-cmsImage articleAuthorBioFooter_image\"> <picture class=\"c-cmsImage_image\"> <img alt=\"David Gewirtz\" src=\"https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/david-gewirtz.jpg?w=64\" srcset=\"https:\/\/www.zdnet.com\/wp-content\/uploads\/sites\/3\/david-gewirtz.jpg?w=128 2x\" class=\"avatar avatar-64 photo\" height=\"64\" width=\"64\" loading=\"lazy\" decoding=\"async\"> <\/picture> <\/div>\n<div class=\"articleAuthorBioFooter_nameText\">\n<div class=\"articleAuthorBioFooter_name\"> <span>David Gewirtz<\/span> <\/div>\n<p> <span class=\"articleAuthorBioFooter_credentials\"> Senior Contributing Editor <\/span> <\/div>\n<\/p><\/div>\n<p> <span class=\"articleAuthorBioFooter_bio has-bio\"> <span>Computer science professor turned AI innovator David Gewirtz has spent over thirty years driving advancements at the forefront of artificial intelligence and is the recipient of the Sigma Xi Research Award in Engineering. He wrote a pioneering analysis that helped shape the early conversation around AI ethics. He was also a pioneer in the commercializing of AI products, including AI languages and knowledge-based systems. He is the designer of the Al Editor, an experimental artificial intelligence engine for parsing, classifying, and identifying news stories. David is a member of the Association for the Advancement of Artificial Intelligence. He currently serves on the Artificial Intelligence Threat and Mitigation Cross-Sector Council (AI CSC) for InfraGard, a partnership between the FBI and industry leaders for the protection of U.S. Critical Infrastructure. He is the author of Where Have All the Emails Gone?, as well as How To Save Jobs and The Flexible Enterprise.<\/span> <a href=\"https:\/\/www.zdnet.com\/meet-the-team\/david-gewirtz\/\" rel=\"author\" class=\"articleAuthorBioFooter_link\"> See full bio <\/a> <\/span> <\/div>\n<p> <!-- Latest Articles Section --> <\/p>\n<div class=\"articleAuthorBioFooter_latest\">\n<h3 class=\"articleAuthorBioFooter_latestTitle\"> The Latest from David <\/h3>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p><!-- .articleAuthorBioFooter-container --><br \/>\nREAD MORE <a href=\"https:\/\/www.zdnet.com\/innovation\/claude-code-vibe-coding-mac-app\/\">HERE<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Claude helped me vibe-code a Mac app and pass Apple\u2019s review in less than two weeks. Come with me on my journey from idea to purchasable App Store product. READ MORE HERE&#8230;<\/p>\n","protected":false},"author":2,"featured_media":61471,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"colormag_page_layout":"default_layout","footnotes":""},"categories":[62],"tags":[],"class_list":["post-61470","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-zdnet-security"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>How I made a paid Mac app in 11 days with Claude \u2013 without writing a single line of code 2026 | ThreatsHub Cybersecurity News<\/title>\n<meta name=\"description\" content=\"ThreatsHub Cybersecurity News | ThreatsHub.org | Cloud Security &amp; Cyber Threats Analysis Hub. 100% Free OSINT Threat Intelligent and Cybersecurity News.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.threatshub.org\/blog\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How I made a paid Mac app in 11 days with Claude \u2013 without writing a single line of code 2026 | ThreatsHub Cybersecurity News\" \/>\n<meta property=\"og:description\" content=\"ThreatsHub Cybersecurity News | ThreatsHub.org | Cloud Security &amp; Cyber Threats Analysis Hub. 100% Free OSINT Threat Intelligent and Cybersecurity News.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.threatshub.org\/blog\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\/\" \/>\n<meta property=\"og:site_name\" content=\"ThreatsHub Cybersecurity News\" \/>\n<meta property=\"article:published_time\" content=\"2026-10-05T12:03:03+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.threatshub.org\/blog\/coredata\/uploads\/2025\/05\/Threatshub_Favicon1.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"432\" \/>\n\t<meta property=\"og:image:height\" content=\"435\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"TH Author\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@threatshub\" \/>\n<meta name=\"twitter:site\" content=\"@threatshub\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"TH Author\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"14 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\\\/\"},\"author\":{\"name\":\"TH Author\",\"@id\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/#\\\/schema\\\/person\\\/12e0a8671ff89a863584f193e7062476\"},\"headline\":\"How I made a paid Mac app in 11 days with Claude \u2013 without writing a single line of code\",\"datePublished\":\"2026-10-05T12:03:03+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\\\/\"},\"wordCount\":2756,\"publisher\":{\"@id\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code.png\",\"articleSection\":[\"ZDNet | Security\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\\\/\",\"url\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\\\/\",\"name\":\"How I made a paid Mac app in 11 days with Claude \u2013 without writing a single line of code 2026 | ThreatsHub Cybersecurity News\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code.png\",\"datePublished\":\"2026-10-05T12:03:03+00:00\",\"description\":\"ThreatsHub Cybersecurity News | ThreatsHub.org | Cloud Security & Cyber Threats Analysis Hub. 100% Free OSINT Threat Intelligent and Cybersecurity News.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code.png\",\"contentUrl\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code.png\",\"width\":864,\"height\":540},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How I made a paid Mac app in 11 days with Claude \u2013 without writing a single line of code\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/\",\"name\":\"ThreatsHub Cybersecurity News\",\"description\":\"%%focuskw%% Threat Intel \u2013 Threat Intel Services \u2013 CyberIntelligence \u2013 Cyber Threat Intelligence - Threat Intelligence Feeds - Threat Intelligence Reports - CyberSecurity Report \u2013 Cyber Security PDF \u2013 Cybersecurity Trends - Cloud Sandbox \u2013- Threat IntelligencePortal \u2013 Incident Response \u2013 Threat Hunting \u2013 IOC - Yara - Security Operations Center \u2013 SecurityOperation Center \u2013 Security SOC \u2013 SOC Services - Advanced Threat - Threat Detection - TargetedAttack \u2013 APT \u2013 Anti-APT \u2013 Advanced Protection \u2013 Cyber Security Services \u2013 Cybersecurity Services -Threat Intelligence Platform\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/#organization\"},\"alternateName\":\"Threatshub.org\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/#organization\",\"name\":\"ThreatsHub.org\",\"alternateName\":\"Threatshub.org\",\"url\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/05\\\/Threatshub_Favicon1.jpg\",\"contentUrl\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/05\\\/Threatshub_Favicon1.jpg\",\"width\":432,\"height\":435,\"caption\":\"ThreatsHub.org\"},\"image\":{\"@id\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/x.com\\\/threatshub\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.threatshub.org\\\/blog\\\/#\\\/schema\\\/person\\\/12e0a8671ff89a863584f193e7062476\",\"name\":\"TH Author\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/066276f086d5155df79c850206a779ad368418a844da0182ce43f9cd5b506c3d?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/066276f086d5155df79c850206a779ad368418a844da0182ce43f9cd5b506c3d?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/066276f086d5155df79c850206a779ad368418a844da0182ce43f9cd5b506c3d?s=96&d=mm&r=g\",\"caption\":\"TH Author\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How I made a paid Mac app in 11 days with Claude \u2013 without writing a single line of code 2026 | ThreatsHub Cybersecurity News","description":"ThreatsHub Cybersecurity News | ThreatsHub.org | Cloud Security & Cyber Threats Analysis Hub. 100% Free OSINT Threat Intelligent and Cybersecurity News.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.threatshub.org\/blog\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\/","og_locale":"en_US","og_type":"article","og_title":"How I made a paid Mac app in 11 days with Claude \u2013 without writing a single line of code 2026 | ThreatsHub Cybersecurity News","og_description":"ThreatsHub Cybersecurity News | ThreatsHub.org | Cloud Security & Cyber Threats Analysis Hub. 100% Free OSINT Threat Intelligent and Cybersecurity News.","og_url":"https:\/\/www.threatshub.org\/blog\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\/","og_site_name":"ThreatsHub Cybersecurity News","article_published_time":"2026-10-05T12:03:03+00:00","og_image":[{"width":432,"height":435,"url":"https:\/\/www.threatshub.org\/blog\/coredata\/uploads\/2025\/05\/Threatshub_Favicon1.jpg","type":"image\/jpeg"}],"author":"TH Author","twitter_card":"summary_large_image","twitter_creator":"@threatshub","twitter_site":"@threatshub","twitter_misc":{"Written by":"TH Author","Est. reading time":"14 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.threatshub.org\/blog\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\/#article","isPartOf":{"@id":"https:\/\/www.threatshub.org\/blog\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\/"},"author":{"name":"TH Author","@id":"https:\/\/www.threatshub.org\/blog\/#\/schema\/person\/12e0a8671ff89a863584f193e7062476"},"headline":"How I made a paid Mac app in 11 days with Claude \u2013 without writing a single line of code","datePublished":"2026-10-05T12:03:03+00:00","mainEntityOfPage":{"@id":"https:\/\/www.threatshub.org\/blog\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\/"},"wordCount":2756,"publisher":{"@id":"https:\/\/www.threatshub.org\/blog\/#organization"},"image":{"@id":"https:\/\/www.threatshub.org\/blog\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\/#primaryimage"},"thumbnailUrl":"https:\/\/www.threatshub.org\/blog\/coredata\/uploads\/2026\/10\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code.png","articleSection":["ZDNet | Security"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.threatshub.org\/blog\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\/","url":"https:\/\/www.threatshub.org\/blog\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\/","name":"How I made a paid Mac app in 11 days with Claude \u2013 without writing a single line of code 2026 | ThreatsHub Cybersecurity News","isPartOf":{"@id":"https:\/\/www.threatshub.org\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.threatshub.org\/blog\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\/#primaryimage"},"image":{"@id":"https:\/\/www.threatshub.org\/blog\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\/#primaryimage"},"thumbnailUrl":"https:\/\/www.threatshub.org\/blog\/coredata\/uploads\/2026\/10\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code.png","datePublished":"2026-10-05T12:03:03+00:00","description":"ThreatsHub Cybersecurity News | ThreatsHub.org | Cloud Security & Cyber Threats Analysis Hub. 100% Free OSINT Threat Intelligent and Cybersecurity News.","breadcrumb":{"@id":"https:\/\/www.threatshub.org\/blog\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.threatshub.org\/blog\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.threatshub.org\/blog\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\/#primaryimage","url":"https:\/\/www.threatshub.org\/blog\/coredata\/uploads\/2026\/10\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code.png","contentUrl":"https:\/\/www.threatshub.org\/blog\/coredata\/uploads\/2026\/10\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code.png","width":864,"height":540},{"@type":"BreadcrumbList","@id":"https:\/\/www.threatshub.org\/blog\/how-i-made-a-paid-mac-app-in-11-days-with-claude-without-writing-a-single-line-of-code\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.threatshub.org\/blog\/"},{"@type":"ListItem","position":2,"name":"How I made a paid Mac app in 11 days with Claude \u2013 without writing a single line of code"}]},{"@type":"WebSite","@id":"https:\/\/www.threatshub.org\/blog\/#website","url":"https:\/\/www.threatshub.org\/blog\/","name":"ThreatsHub Cybersecurity News","description":"%%focuskw%% Threat Intel \u2013 Threat Intel Services \u2013 CyberIntelligence \u2013 Cyber Threat Intelligence - Threat Intelligence Feeds - Threat Intelligence Reports - CyberSecurity Report \u2013 Cyber Security PDF \u2013 Cybersecurity Trends - Cloud Sandbox \u2013- Threat IntelligencePortal \u2013 Incident Response \u2013 Threat Hunting \u2013 IOC - Yara - Security Operations Center \u2013 SecurityOperation Center \u2013 Security SOC \u2013 SOC Services - Advanced Threat - Threat Detection - TargetedAttack \u2013 APT \u2013 Anti-APT \u2013 Advanced Protection \u2013 Cyber Security Services \u2013 Cybersecurity Services -Threat Intelligence Platform","publisher":{"@id":"https:\/\/www.threatshub.org\/blog\/#organization"},"alternateName":"Threatshub.org","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.threatshub.org\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.threatshub.org\/blog\/#organization","name":"ThreatsHub.org","alternateName":"Threatshub.org","url":"https:\/\/www.threatshub.org\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.threatshub.org\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.threatshub.org\/blog\/coredata\/uploads\/2025\/05\/Threatshub_Favicon1.jpg","contentUrl":"https:\/\/www.threatshub.org\/blog\/coredata\/uploads\/2025\/05\/Threatshub_Favicon1.jpg","width":432,"height":435,"caption":"ThreatsHub.org"},"image":{"@id":"https:\/\/www.threatshub.org\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/threatshub"]},{"@type":"Person","@id":"https:\/\/www.threatshub.org\/blog\/#\/schema\/person\/12e0a8671ff89a863584f193e7062476","name":"TH Author","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/066276f086d5155df79c850206a779ad368418a844da0182ce43f9cd5b506c3d?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/066276f086d5155df79c850206a779ad368418a844da0182ce43f9cd5b506c3d?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/066276f086d5155df79c850206a779ad368418a844da0182ce43f9cd5b506c3d?s=96&d=mm&r=g","caption":"TH Author"}}]}},"_links":{"self":[{"href":"https:\/\/www.threatshub.org\/blog\/wp-json\/wp\/v2\/posts\/61470","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.threatshub.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.threatshub.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.threatshub.org\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.threatshub.org\/blog\/wp-json\/wp\/v2\/comments?post=61470"}],"version-history":[{"count":0,"href":"https:\/\/www.threatshub.org\/blog\/wp-json\/wp\/v2\/posts\/61470\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.threatshub.org\/blog\/wp-json\/wp\/v2\/media\/61471"}],"wp:attachment":[{"href":"https:\/\/www.threatshub.org\/blog\/wp-json\/wp\/v2\/media?parent=61470"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.threatshub.org\/blog\/wp-json\/wp\/v2\/categories?post=61470"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.threatshub.org\/blog\/wp-json\/wp\/v2\/tags?post=61470"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}