Desktop App
The Flutternaut desktop app is where you manage devices, create tests, and run them on emulators, simulators, and physical devices.
Installation
Download the latest version for your platform from the download page.
- macOS — Open the DMG and drag Flutternaut to Applications
- Windows — Run the installer and follow the setup wizard
First Launch
On first launch, the app starts the test engine and Appium server automatically. The splash screen shows startup progress:
- Preparing engine...
- Starting engine...
- Starting Appium...
- Ready — navigates to the dashboard
You'll also be prompted to sign in or create an account. Free accounts have access to all core features.

Dashboard
The dashboard gives you an overview of your testing environment: system health, Appium status, connected devices, recent test reports, and quick actions.

Environment Setup
The Setup screen checks that all dependencies are installed: Node.js (bundled), Appium, and platform drivers (UiAutomator2 for Android, XCUITest for iOS). Missing components can be installed with one click.

Device Manager
Manage all your testing devices from one place:
- Android emulators — List, launch, and kill AVDs
- iOS simulators — List, boot, and shutdown simulators
- Physical devices — Auto-detected when connected via USB. Shown with a "Connected" badge
Start and stop the Appium server from the device manager toolbar.

Config Editor
Two default configurations (Android and iOS) are pre-created on first launch with sensible defaults — just select one and set your app file path.
- Platform (Android/iOS) with auto-detected automation driver
- App path — drag & drop an APK, .app, or .ipa file. The package name (Android) or bundle ID (iOS) is automatically extracted from the file
- Timeouts (global, element wait, poll interval)
- Retries and reporting options
- iOS Signing — for physical iOS devices, enter your Xcode Team ID (find it at developer.apple.com → Membership → Team ID)
Configs are saved to ~/Documents/FlutternautConfigs/ and can be reused across test runs. You can also create custom configs with the + button.

Physical iOS Devices
Testing on physical iOS devices requires additional setup for WebDriverAgent (WDA) code signing. Follow these steps:
- Follow the Appium XCUITest driver device setup guide to configure your device for testing
- In the Config Editor, select the iOS default config and set your .app or .ipa file path
- Enter your Xcode Team ID in the iOS Signing section (find it at developer.apple.com → Membership → Team ID)
The first test run on a physical device may take several minutes as WebDriverAgent is built and signed automatically. Subsequent runs are much faster.
Running Tests
To run a test:
- Select a device from the dropdown
- Select a config file
- Select a test file (JSON)
- Click Run
The app creates an Appium session, streams live results via SSE, and shows each step's status in real-time. Failed steps include screenshots for debugging.

Test Editor
Build tests visually with the drag-and-drop test editor. Add steps from the action picker, configure targets and values, and reorder steps. Tests are saved as JSON files.

AI Chat
Describe what you want to test in natural language, and the AI generates a complete test JSON. You can review and edit the generated test before running it directly from the chat.
Upload your flutternaut_keys.json (generated by flutternaut_generator) so the AI targets real elements in your app.

Reports
After each test run, a JSON report is generated with pass/fail status, duration, and failure screenshots. Browse all reports in the Reports screen with search and status filters.

Settings
Configure:
- Engine URL — Change the engine server address (default: localhost:8400)
- AI Settings — API key and model selection
- Account — View plan, sign out, upgrade to Pro
