Source note
Vibe once, run anywhere with Antigravity and Flutter
Summary
The post argues that Flutter is a practical target for AI coding agents because one Dart codebase can ship across web, mobile, and desktop. It uses DashLander, a Flutter and Flame game built with Google Antigravity and Gemini tools, as a worked example.
Problem
- AI agents can generate separate native apps, but separate Android, iOS, and web codebases raise the chance of platform drift, duplicate bugs, and higher token cost.
- Game prototyping needs fast iteration across gameplay, assets, physics, backend, and launch pages; manual work across all of these areas slows validation.
- Agent-written code can be hard to trust when math, physics, replay timing, or collision logic fail in ways that are hard to inspect.
Approach
- Build one cross-platform Flutter app with Dart so the agent gets type errors and analysis-server feedback while targeting multiple platforms from one codebase.
- Use Antigravity to plan, edit code, run tests, click through the UI, and split work across sub-agents for backend, UI, and game logic.
- Generate supporting assets with Google tools: Lyria for music, Stitch and Google Canvas for UI designs, Gemini for particle effects, Nano Banana for icons, and Gemini Deep Research for RCS physics formulas.
- Prototype in AI Studio, then move the chosen ideas into Flutter, Flame, Firebase, Gemini API, and Jaspr for the game, backend, AI features, and marketing site.
- Add debug overlays and replay checkpoints so the human developer can inspect terrain data, tilt, hitboxes, and replay drift instead of trusting the agent's math by sight.
Results
- The authors say Antigravity produced an initial Flutter and Flame game in about 5 minutes, compared with work that would normally take days, though the first version had only 3 hard-coded levels and major gameplay issues.
- The final version required about 100 more prompts, with many prompts spent on code organization and tests rather than new gameplay.
- Challenge Mode avoided real-time multiplayer infrastructure by replaying past high-score ghosts; the authors estimate this gave about 90% of the desired competitive feel with static storage and a simpler backend.
- A replay bug came from millisecond-level scheduling drift; storing complete lander state at thruster events fixed ghost replays that could otherwise crash near the end of a run.
- The launch flow used Antigravity CLI to build the Flutter web app, copy output into Jaspr, run the build, and deploy to Firebase Hosting in one terminal workflow.
- The post gives no controlled benchmark, user study, or cost measurement. Its strongest concrete claim is an end-to-end shipped web game at dashlander.com, with the same Flutter codebase positioned for iOS, Android, macOS, Windows, and Linux builds.