Every platform demo shows you a website appearing. Fewer show you an Android bundle, because behind an .aab is the Gradle toolchain, native modules that must agree with each other about versions, signing keys, and a build that takes twenty minutes and fails with a stack trace in a language of its own. That's precisely why it's worth automating: the difficulty is infrastructural, not conceptual.
What comes out
| Artifact | What it is | Where it goes |
|---|---|---|
| Android .aab / .apk | A signed bundle built by the actual Android toolchain | Google Play, or direct install |
| Windows installer | A desktop app, packaged | Direct download |
| macOS .dmg | Universal binary — Apple Silicon and Intel in one | Direct download |
| Linux packages | .deb and AppImage | Direct download |
| Browser extension | MV3 zip | Chrome Web Store, Firefox Add-ons |
These are real toolchain builds, which cuts both ways: they take real time (Android's native compile phase alone can run 15–25 minutes), and they fail the way real builds fail — which the platform treats as its problem, not yours. Dependency conflicts between native modules get caught and the toolchain configuration keeps absorbing what we learn from every failure.
Small hells, pre-suffered
The details in that table each hide a story we've already lived so you don't have to. macOS builds are universal because "works on my Mac but not yours" is a terrible first user experience. The install dialog detects your OS and shows the exact steps for it — including the right-click-open dance macOS requires for apps outside the App Store — because "Malware Blocked" screenshots from confused users taught us the dialog had one job. Download filenames are the product's name, not a build artifact's.
The same chat all the way down
There's no separate "mobile project" or "extension project." A build that makes sense as an app grows an app; you iterate in the same conversation, and each new version can rebuild its native artifacts. When the product's ready for a storefront, the ship path picks up from there — through your own developer accounts.
