Building a Mac app with Claude code

https://news.ycombinator.com/rss Hits: 3
Summary

I recently shipped Context, a native macOS app for debugging MCP servers. The goal was to build a useful developer tool that feels at home on the platform, powered by Apple's SwiftUI framework. I've been building software for the Mac since 2008, but this time was different: Context was almost 100% built by Claude Code1. There is still skill and iteration involved in helping Claude build software, but of the 20,000 lines of code in this project, I estimate that I wrote less than 1,000 lines by hand2.This is a long post explaining my journey, how I chose my tools, what those tools are good at and bad at (for now), and how you can leverage them to maximize the quality of your generated code output, especially if you're building a native app like I am.Copilot to Claude CodeStarting Yet Another Side ProjectClaude Code Is Good at Writing CodeClaude Code Is Okay at Swift and Good at SwiftUIYou Can Just Say "Make it More Beautiful"Context Engineering Is KeyPriming the AgentAgents Can’t Read Your Mind, They Need Specs"Ultrathink and Make a Plan"Set Up Feedback LoopsClaude Code Can Do More Than Write CodeBuilding High Quality Automation Is (Almost) Free NowIDEs of the Future Will Look Very DifferentI Can Ship Side Projects Again1. Copilot to Claude CodeMy first experience with AI coding tools was when I tried GitHub Copilot, built into VS Code. This was the first tool of its kind, and I was pretty amazed: at the time, it was just autocomplete, but it was surprisingly effective—instead of only autocompleting symbol names or function signatures like a typical editor, it could autocomplete entire function implementations based on the context around it. This was a great productivity boost but it still felt like you were doing most of the work.Then things started to move fast: Cursor took off, they added Agent Mode, and new competitors like Windsurf entered the space. All of the products were leaning into the "agentic" mode of development, where instead of using one-shot LLM respo...

First seen: 2025-07-06 16:24

Last seen: 2025-07-06 18:24