finds.dev← search

// the find

flutter-team-archive/io_flip

★ 691 · Dart · BSD-3-Clause · updated Jun 2026

Google I/O 2023 FLIP AI-designed card game built with Flutter & Firebase

I/O FLIP is the open-source code behind Google's AI card game from I/O 2023, built with Flutter for web and a Dart backend using the Dart Frog framework. It's a real-world example of a production Flutter web game with real-time multiplayer, AI-generated card art, and Firebase integration — useful if you're building something in that space.

The monorepo is cleanly split into many small, independently-tested packages (game_domain, match_repository, cards_repository, etc.), which is unusual discipline for a conference demo and makes the code actually reusable. The load-testing bot (Flop) is a nice touch — it's a Flutter web app that spawns itself to hammer the backend, solving the 'how do I stress test WebSocket matchmaking' problem in an unusual way. The CI setup has per-package workflows, so a change to jwt_middleware doesn't trigger a full rebuild. Very Good Ventures enforced their linting rules throughout, so the Dart code is consistently formatted and analyzed.

This is a conference demo that was shipped and then archived — the game server is effectively dead (flip.withgoogle.com no longer serves the live game), so you can't actually play it to see how all the pieces fit together at runtime. The AI card generation pipeline depends on Google-internal Vertex AI configuration that isn't included, so the most interesting part of the system ('AI-designed') is not reproducible from this repo alone. The Dart Frog backend and Flutter web client are tightly coupled to Firebase in ways that make it hard to run locally without standing up a Firebase project first. Documentation stops at 'run flutter run' — there's no architectural write-up of how the WebSocket match state machine actually works, which is the part most people would want to study.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →