A technical overview of how Hamburg transforms your module selections into a native iOS app on TestFlight.
Hamburg is a platform that lets you build and publish custom iOS apps to TestFlight without writing code or managing Xcode. Select the features you need, and we handle everything else.
Hamburg consists of three tiers working together to turn your module selections into a real iOS app: a web dashboard where you work, a build system where the magic happens, and Apple's services where your app lives.
When you sign up, Stack Auth handles your login securely. Your user profile is then synced to our Supabase database, where we store your app configurations and encrypted credentials.
Each module in Hamburg is a Swift Package that adds specific functionality to your app. At build time, we use compilation flags to include only the modules you selected, keeping your app lean and focused.
When you click Publish, a GitHub Actions workflow springs into action on a macOS runner. Your module configuration is applied, the app is compiled with xcodebuild, signed with your credentials, and uploaded to TestFlight.
Apple requires all apps to be cryptographically signed before they can run on devices. Hamburg uses cloud signing, where Apple manages certificates for you through App Store Connect. You just provide an API key, and we handle the rest.
Hamburg uses a combination of Apple's App Store Connect API and Fastlane to manage your apps. While the ASC API handles most operations, Apple doesn't allow creating new apps through the API alone. That's where Fastlane comes in—it's an open-source tool that automates iOS deployment tasks, and we use it specifically to create your app record in App Store Connect using your Apple ID credentials.
Once the build is uploaded, Apple processes it for TestFlight distribution. This typically takes 10-30 minutes. After processing, your testers can install the app directly from the TestFlight app on their devices.
Throughout the build process, you see exactly what's happening. Our progress timeline updates in real-time without needing to refresh the page. If something goes wrong, you get clear error messages explaining what happened and how to fix it.
Hamburg is built with modern, battle-tested technologies. The web dashboard runs on Next.js with React, styled with Tailwind CSS. Authentication is handled by Stack Auth, while Supabase provides the PostgreSQL database with row-level security. The iOS app is pure UIKit with Swift Package Manager for modularity. Builds run on GitHub Actions with macOS runners, using xcodebuild for compilation and Fastlane for Apple integrations.