{"title":"Native Application Preview","description":"Generated platforms, prerequisites, and release boundaries for Amber CLI native applications","section":"guides","version":"v2","path":"guides/native-preview","canonical_url":"https://amberframework.org/docs/v2/guides/native-preview","markdown_url":"https://amberframework.org/docs/v2/guides/native-preview.md","inherited":false,"content_markdown":"# Amber V2 Native Application Preview\n\nAmber CLI can generate a cross-platform native project, but this surface is a\npreview. It is **not release-gated with the V2 web beta** and is not covered by\nthe clean web-template compile guarantee.\n\n**Run from: the parent directory where `field_app/` should be created.**\n\n```bash\namber new field_app --type native\n```\n\nThe generated project uses Amber V2 application patterns without starting an\nHTTP server. Its interface layer is built around Asset Pipeline UI, with\nplatform hosts and build scripts for desktop and mobile work.\n\n## Platform map\n\n| Target | Generated direction | Preview boundary |\n|---|---|---|\n| macOS | Native AppKit host | Requires the Apple toolchain and preview dependencies |\n| iOS | UIKit host and simulator/device build scripts | Cross-compilation and signing are not part of the web beta gate |\n| Android | Android host and NDK build scripts | SDK, NDK, JDK, and device setup are not part of the web beta gate |\n\n## Generated concepts\n\n- `config/native.yml` as the native capability manifest\n- Asset Pipeline UI components for platform rendering\n- macOS, iOS, and Android host projects and build scripts\n- FSDD process-manager structure\n- crystal-audio integration points\n- platform-oriented accessibility and end-to-end test locations\n\nThese are descriptions of generated output, not a promise that every platform\nbuilds from a clean machine today. Platform-specific prerequisites, signing,\ncross-compilers, and preview shard compatibility must be proven separately\nbefore native support can graduate.\n\n## Choose the supported first run\n\nFor the V2 beta installation and onboarding path, create the default web app:\n\n**Run from: the parent directory where `my_app/` should be created.**\n\n```bash\namber new my_app\ncd my_app\ncrystal spec\namber watch\n```\n\nUse native generation when you intend to evaluate the platform work and can\nreport exact toolchain results. Do not interpret “generated” as “release-gated.”"}