SwiftUI: Running a Mac App Without an Xcode Project
In 2018, we wrote a post about using AppKit from the command line. We can use exactly the same technique to run a SwiftUI app directly from a Swift file.
When you're writing a quick tool, perhaps to visualize something, or to get user feedback, an Xcode project can feel like overkill. It's often very useful to have a single file that you just run with swift myfile.swift from Terminal. Likewise, when you're inside a Swift Package Manager project, you might not want to create an additional Xcode project when you're just testing things out.
							
What if you could just do the following?
								NSApplication.shared.run {
    VStack {
        Text("Hello, World")
        	.padding()
            .background(Capsule().fill(Color.blue))
            .padding()
    }
    .frame(maxWidth: .infinity, maxHeight: .infinity)
}
							
							Fortunately, you can, by pasting in the boilerplate code from this gist. Simply run swift boilerplate.swift in Terminal and you'll have a macOS app up and running.
							
If you're building a complex app, you'll almost certainly want to move to a "real" application, but for one-off tools and prototyping we've found this shortcut very useful.
 
							In Swift Talk Episode #145, which is free to watch, we use the same technique to create an AppKit app using Swift Package Manager.