I Built an AI Boardroom App in 8 Hours with Flutter & AI 🚀 (Open Source)

Published: (January 5, 2026 at 01:43 PM EST)
3 min read
Source: Dev.to

Source: Dev.to

App Screenshot 1
App Screenshot 2
App Screenshot 3

“What if you could have a board of directors made up of the world’s smartest AI models, debating your problems in real-time?”

That question led to LLM Council, built entirely between lunch and dinner.

The Inspiration

I saw Andrej Karpathy (founding member of OpenAI, former Director of AI at Tesla) tweet about his project: llm-council.
His web interface lets you ask a question, gathers answers from multiple LLMs (GPT‑4, Claude, etc.), lets the models read each other’s responses, and then a “Chairman” model synthesizes the best advice.

I wanted that experience in my pocket—a premium, executive‑tier mobile app that feels like stepping into a boardroom, complete with dark mode, gold accents, and smooth animations.

The Tech Stack

  • Flutter 3.6+ – silky‑smooth 60 fps UI on iOS and Android.
  • Bloc & Clean Architecture – fast development without messy code.
  • OpenRouter API – single key to access Claude 3.5 Sonnet, GPT‑4o, Gemini 1.5 Pro, etc.
  • Antigravity – AI coding assistant that acted as my pair programmer.

The “Lunch to Late Dinner” Sprint (1 PM – 9 PM)

1:00 PM – The Setup 🏗️

Initialized the Flutter project and created the domain layer:
User → Question → Council → Deliberation → Synthesis.

2:30 PM – The Antigravity Boost 🚀

Prompted Antigravity:

“Generate a repository that hits OpenRouter. It needs to handle streaming responses from 4 different models simultaneously.”

Antigravity produced a complete implementation with Dio interceptors, error parsing, and concurrent Future.wait calls.

4:30 PM – UI Polish ✨

Designed a “Succession‑style” aesthetic:

  • Deep navy background (#0F172A)
  • Gold accents for the active speaker
  • Anonymized peer reviews (models rank each other blindly)

Used flutter_animate for sliding‑in messages.

6:30 PM – Synthesis Logic 🧠

Implemented the Chairman model:

“Review these perspectives and provide a synthesized, executive summary.”

The resulting answers were more balanced and nuanced than any single model.

8:00 PM – Final Optimizations & Testing 🏁

  • Added local persistence with sqflite.
  • Secured API‑key storage.
  • Refined the Chairman animation for buttery smoothness.

9:00 PM – Commit, push, and dinner.

The Code (Open Source)

The full project is open source. Clone it, add your own API keys, and have your personal AI board of directors.

👉 github.com/sayed3li97/llm_council_app

Future consult(String query) async {
  // 1. Fire off requests to all members in parallel
  final responses = await Future.wait(
    members.map((model) => _api.ask(model, query)),
  );

  // 2. Anonymize and request peer reviews
  final reviews = await _conductPeerReviews(responses);

  // 3. Synthesis by Chairman
  return _chairman.synthesize(responses, reviews);
}

Why This Matters

Development is shifting from raw typing speed to architectural vision and tool leverage. By using an AI assistant like Antigravity, I could focus on product experience—animations, flow, and value—while the AI handled the plumbing.

A production‑ready app built in 8 hours demonstrates what’s possible when the right tools meet a clear vision.

What will you build?

If you enjoyed this, consider starring the repo and following for more Flutter & AI experiments.

Back to Blog

Related posts

Read more »

The RGB LED Sidequest 💡

markdown !Jennifer Davishttps://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%...

Mendex: Why I Build

Introduction Hello everyone. Today I want to share who I am, what I'm building, and why. Early Career and Burnout I started my career as a developer 17 years a...