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



“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.