Fission command
This Cargo package installs the first-party fission command:
Usage
Create a new app:
fission init my-app
Register an existing app or example without overwriting existing files:
fission init existing-app
When the directory already has source, docs, assets, or platform files, init preserves them. It derives the package name from Cargo.toml when possible, detects existing platforms/<target>/ folders, writes fission.toml, and creates only missing generated support files.
Create a new app against a local Fission checkout:
fission init my-app --local-path /path/to/fission
Add more platform targets:
fission add-target web ios android --project-dir my-app
Check local SDKs, emulators, browsers, and Rust targets:
fission doctor web ios android --project-dir my-app
List runnable devices and targets:
fission devices --project-dir my-app
fission devices --project-dir my-app --json
Run and attach to app output/logs:
fission run --project-dir my-app
fission run --project-dir my-app --target web
fission run --project-dir my-app --target android --device emulator-5554
fission run --project-dir my-app --target ios --device <simulator-udid>
fission run attaches by default. Use --detach to start the app and return, then use fission logs to attach later where the platform supports it:
fission run --project-dir my-app --target web --detach
fission logs --project-dir my-app --target web --follow
Build or run smoke tests without launching the full attached workflow:
fission build --project-dir my-app --target web --release
fission test --project-dir my-app --target web
fission test --project-dir my-app --target ios --headless
windows, macos, linux: scaffolded and runnable through fission run
ios: scaffolded by the CLI and runnable on the simulator through fission run --target ios
android: scaffolded by the CLI and runnable on a device or emulator through fission run --target android
web: scaffolded by the CLI and runnable in a browser through fission run --target web
The CLI writes platform state to fission.toml and creates platforms/<target>/README.md notes with the current prerequisites and next steps for each target. For iOS it also generates:
assets/app-icon.png seeded from Fission's docs/fission_logo.png
platforms/ios/package-sim.sh
platforms/ios/test-sim.sh
For Android it also generates:
platforms/android/AndroidManifest.xml
platforms/android/package-apk.sh
platforms/android/run-emulator.sh
platforms/android/test-emulator.sh
For Web it also generates:
platforms/web/bootstrap.mjs
platforms/web/build-wasm.sh
platforms/web/run-browser.sh
platforms/web/test-browser.sh
The generated iOS bundle, Android package, and browser host page all use assets/app-icon.png as the default app icon seed.
See also:
../../../docs/cli-and-targets.md
../../../docs/platform-smoke-tests.md