Skip the painful setup. Onboarding, Apple and Google sign-in, RevenueCat subscriptions, Firebase analytics and crash reporting. All wired up, in a SwiftUI project your AI agent already understands.
Onboarding, Apple + Google sign-in, RevenueCat subscriptions, Firebase analytics, an AI assistant, notifications, a home screen widget, and an Apple Watch app. All generated, all wired together, all in real Swift you can ship.
4-tab scaffold, navigation, settings, paywall sheet. iOS 17+. No watermarks.
Typed HTTP client with bearer-token auth, retry, and clean error cases. Define endpoints as enums; call them from any view.
Strings, colors, fonts, and images referenced by name. SwiftGen turns them into compile-time constants so a typo is a build error, not a missing image at runtime.
Entitlement, offering, packages, paywall sheet, restore flow. All hooked up.
Type one US price; we push a real price to all ~175 App Store countries, then let you tune per region with one click. Most apps price only the US and leave the rest empty.
Sign-in-with-Apple parity ready. Google sign-in toggle ships pre-configured.
Analytics + Crashlytics wired into the launch sequence. Off by default; on by toggle.
OpenAI, Anthropic, or Apple's on-device intelligence behind one call. Switch providers anytime. Keys stay on the user's device.
Local notifications work out of the box; push pre-wired with the entitlement. Request, schedule, handle taps, register for APNs.
WidgetKit extension in small, medium, and large, reading live app data through a shared App Group. Toggle on, customize the views.
watchOS app embedded in your iOS app, with bidirectional phone-to-watch messaging over WatchConnectivity wired both ways.
CLAUDE.md, .cursorrules, skill.json. Your AI agent reads them before writing a line.
Cursor, Claude Code, Codex, Cline and any MCP agent. The skills bundle teaches them the project's conventions before they write a line.
One-time Stripe payment, magic-link sign-in, then this.
Name, bundle ID, optional modules. We pre-fill what we can.
Pick a US monthly + annual price. We snap each to Apple’s nearest tier.
Paste your RC secret key. We create the project, app, entitlement, offering.
Every line item below is a thing you'd normally do by hand on day one. With Spaceport, most of them are already in the project before you open it.
Generic agents guess at architecture, re-implement the SDK, and scatter @Published everywhere. A Spaceport agent reads CLAUDE.md, .cursorrules and skill.json first, then writes Swift that matches the project. Works with Cursor, Claude Code, Codex, Cline and any MCP agent.
ObservableObject + @PublishedURLSession.shared.dataTask directly, parses JSON inlineImage("AppIcon") and NSLocalizedString("welcome.title", …).onAppear { Task { … } }purchases.products to decide if the user is paid@Observable + @State for view ownershipAPIClient.shared.send(_:)Asset.Images.appIcon.image and L10n.Welcome.title.task { await vm.load() }, auto-cancels on disappearSubscriptionManager.shared.hasEntitlement("pro")We've shipped this kit through Apple. Yours will too.
Every generated project ships with App Store-compliant defaults: privacy manifest, ATT prompt logic, IDFA usage strings, sign-in-with-Apple parity, paywall copy that passes Guideline 3.1.2, and a clean Connect submission flow.
Spaceport creates your subscriptions in App Store Connect, sets the price, and connects them to RevenueCat (entitlement, offering, packages), so they are ready to sell the moment you launch. No tier-by-tier clicking, no copy-pasting product IDs.
By default every country gets Apple's standard conversion of your US price. Or pick a purchasing-power strategy per subscription (Netflix-style and more): charge less where $9.99 is steep, like India or Brazil, and match local expectations where customers pay more, like Switzerland or Norway. It routinely lifts both conversion and revenue, and most indie apps never bother. One click, pushed straight to App Store Connect.
Pay once, generate as many projects as you want. Lifetime updates included.
Unlimited projects. Lifetime updates. 30-day refund if the generated project doesn't build.
Live on the App Store, generated from this same wizard. Tap any one to open it on the App Store.
Your generated project pulls in well-known packages from GitHub. Nothing proprietary, nothing vendor-locked. If Spaceport goes away tomorrow, your project keeps building.
Spaceport's Swift wrapper around RevenueCat. The patterns the code generator targets. Fork it, replace it, ignore it.
Sign in with Apple, wrapped in a SwiftUI-friendly API. The module the wizard's Apple sign-in toggle wires up.
SwiftUI wrapper around Google's iOS sign-in SDK. The module the wizard's Google sign-in toggle wires up.
URLSession-backed HTTP client with async/await, typed endpoint protocol, retry, and auth interceptor. Used for every API call in your generated app.
One async API for OpenAI, Anthropic, and Apple's on-device Foundation Models. Pick the provider at runtime; API keys live in the device Keychain.
Type-safe assets, colors, fonts, and strings. Bundled with a working swiftgen.yml and the constants pre-generated, so it's set up out of the box.
Firebase Core, Analytics, and Crashlytics. Pulled in only when the Firebase toggle is on.
Builds typed Swift constants for assets, colors, fonts, and Localizable strings. A typo becomes a compile error, not a missing image at runtime. Constants ship pre-generated so the project builds with zero tooling.
SwiftNetworkingKit wired through a single NetworkManager. Define each endpoint as a Swift enum (one enum per resource group, cases for each operation, computed baseURL/path/method) and call it in one line. Bearer tokens attach to every request after sign-in via an AuthInterceptor; errors come back as a typed NetworkError you switch on, instead of mystery network failures.AGENTS.md, CLAUDE.md, and .cursor/rules pointing at one source of truth, plus three teaching packs by Paul Hudson covering modern SwiftUI, Swift Testing, and SwiftData. The how and why is in the next FAQ.RevenueCatSubscriptionKit, which is open source. Fork or replace it if you want.info@deadpixel-studio.com. We test every release on macOS 14 + 15.