Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Scaling Design Systems in Flutter: Lessons from...
Search
Dhrumil Shah
November 30, 2025
Programming
35
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Scaling Design Systems in Flutter: Lessons from building UIKit
Dhrumil Shah
November 30, 2025
More Decks by Dhrumil Shah
See All by Dhrumil Shah
Scaling Design Systems in Flutter: Lessons from building UIKit
dhuma1981
0
65
Utilise the power of AI with Flutter App Development
dhuma1981
0
65
Build_your_First_App_with_Flutter.pdf
dhuma1981
1
450
Flutter: Makes developer’s life easy
dhuma1981
1
400
Flutter Theming & Animation
dhuma1981
1
340
Let's explore Flutter with Firebase
dhuma1981
0
650
Let's Start with Flutter
dhuma1981
4
410
What the Flutter?
dhuma1981
1
370
Let's Flirt with Flutter
dhuma1981
3
470
Other Decks in Programming
See All in Programming
dRuby over BLE
makicamel
2
330
キャリア迷子上等 ─ "ない道"は自分で作ればいい
16bitidol
3
2k
気圧・高度・GPSを記録&可視化するアプリ「Koudo」を作った話
hjmkth
1
140
エージェンティックRAGにAWSで入門しよう!
har1101
8
1.4k
並列実装の現場、2ヶ月間実務でAIを使い倒したAIもPCも私も限界が近い
ming_ayami
0
130
Skillsは効率化、Agentsは"自分の拡張"——Builder時代のエージェント編成(CC Night 2026)
wemra
1
120
脅威をエンジニアリングの糧にして――現場編 / Turning Threats into Engineering Fuel — Field Edition
nrslib
0
270
New "Type" system on PicoRuby
pocke
1
830
肥大化するレガシーコードに立ち向かうためのインターフェース分離と依存の逆転 / JJUG CCC 2026 Spring
hirokunimaeta
0
540
TypeScript+Orvalで実現する型安全かつ堅牢でスケーラブルなマルチチャネル通知基盤 / TSKaigi Night talks ~after conference~
d0riven
0
330
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
0
210
The NotImplementedError Problem in Ruby
koic
1
720
Featured
See All Featured
The World Runs on Bad Software
bkeepers
PRO
72
12k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
720
First, design no harm
axbom
PRO
2
1.2k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.4k
Typedesign – Prime Four
hannesfritz
42
3.1k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
770
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.1k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Crafting Experiences
bethany
1
180
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
470
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
230
Transcript
Pune 2025 Dhrumil Shah Architect, Scapia Scaling Design Systems in
Flutter: Lessons from building UIKit
Pune 2025 Dhrumil Shah Architect, Scapia - Flutter & Dart
GDE - Mobile App Architect - Startup mentor - A11y advocate
Why Are We Here?
None
Scalable System Design • Planning the architecture & infrastructure of
a system • Defining components (APIs, services, databases) • Understanding how they interact to meet requirements
Scalable System Design • Planning the architecture & infrastructure of
a system • Defining components (APIs, services, databases) • Understanding how they interact to meet requirements
DESIGN SYSTEM ≠ SYSTEM DESIGN
Let’s create a button
Pune 2025
Pune 2025
Pune 2025
आता कशाला वाट लागली?
Inconsistent Code Developers create the same button in many different
ways:
• UI inconsistency slows teams down
• UI inconsistency slows teams down • Engineering time wasted
reinventing components
• UI inconsistency slows teams down • Engineering time wasted
reinventing components • Designers maintain multiple versions of the same UI
• UI inconsistency slows teams down • Engineering time wasted
reinventing components • Designers maintain multiple versions of the same UI • Hard to scale without a shared source of truth
We Are Here for DESIGN SYSTEM
None
None
Design System • A style guide for UI & graphic
design
Design System • A style guide for UI & graphic
design • Ensures products have a consistent, cohesive, on-brand experience
Design System • A style guide for UI & graphic
design • Ensures products have a consistent, cohesive, on-brand experience Visual + Interaction + Code + Tokens + Governance
Pune 2025 Design System { standards } UIKit { implementation
in Flutter } Component Library { ready-to-use Widgets }
Why Companies Need DS
Why Companies Need DS • Consistency
Why Companies Need DS • Consistency • Speed
Why Companies Need DS • Consistency • Speed • Onboarding
Why Companies Need DS • Consistency • Speed • Onboarding
• Reusability
Why Companies Need DS • Consistency • Speed • Onboarding
• Reusability
How to start with Design System
None
None
Tokens "The smallest, platform-agnostic design values"
Tokens • Colors • Typography • Spacing • Radius &
shadow • Motion
Tokens • Colors • Typography
Atoms "The smallest functional UI elements"
Atoms
Atoms
Molecules "Atoms working together as a small, meaningful unit"
Molecules
Organisms "Complex sections made of atoms + molecules"
Organisms • Navigation bar • Card component • Sidebar •
Form sections
Template "A page-level blueprint that defines the layout and structure
of an interface without including specific content."
Template
None
Key challenges in Scaling
Key challenges in Scaling • Multiple teams
Key challenges in Scaling • Multiple teams • New designers
Key challenges in Scaling • Multiple teams • New designers
• Design drift
Key challenges in Scaling • Multiple teams • New designers
• Design drift • Component misuse
None
Flutter Strength for Design System
Flutter Strength for DS • Single Codebase
Flutter Strength for DS • Single Codebase • Declarative Nature
Flutter Strength for DS • Single Codebase • Declarative Nature
• Theming + Extension
Flutter Strength for DS • Single Codebase • Declarative Nature
• Theming + Extension • Composition over Inheritance
Flutter Strength for DS • Single Codebase • Declarative Nature
• Theming + Extension • Composition over Inheritance • Hot Reload & Widget Previews
None
API Design Principles with Flutter • Sensible defaults
API Design Principles with Flutter • Sensible defaults • Fewer
required params
API Design Principles with Flutter • Sensible defaults • Fewer
required params • Consistent naming
API Design Principles with Flutter • Sensible defaults • Fewer
required params • Consistent naming • Predictable behavior
API Design Principles
Anti Patterns in Flutter • Props explosion • Overly generic
widgets • Styles inside features • Multiple forms of the same component
Documentation
None
Documentation is Important
Documentation is Important (or why it fails) • Nobody reads
it • Nobody updates it
What Good Docs Look Like
• Usage guidelines Navigation bars can have three to five
destinations
• Do / Don’t with Code examples The FAB should
be right-aligned above the navigation bar Don’t cover the navigation bar with FAB
• Story-Based Documentation • Live Catalogs (Widgetbook / Widget Previews)
• Auto-Generated Docs (Dartdoc)
None
None
Testing
• Golden Tests for snapshot comparison
• Golden Tests for snapshot comparison • Widget Tests for
behaviour
• Golden Tests for snapshot comparison • Widget Tests for
behaviour • CI Integration to block PRs on mismatched goldens
• Golden Tests for snapshot comparison • Widget Tests for
behaviour • CI Integration to block PRs on mismatched goldens • Linting for Compliance (Custom rules -“no random colors”)
Dhrumil Shah @dhuma1981
Examples references • Material Design - m3.material.io • Zing -
design.tatadigital.com • Sushi - blog.zomato.com/sushi • Blade - blade.razorpay.com • Base - base.uber.com • wise.design
Connect With Me x.com/dhuma1981 linkedin.com/in/dhuma1981 flutterflakes.com conalyz.com
Special Thanks to Tirth AI (Asli Insaan) Deep AI (Asli
Insaan)
Thank You Pune