This repo is a collaborative collection from the Flutter talks at FlutterCon 25:
Please add your info to the .json files inside the talks/ directory. All .md files will be generated via script dart run .automation/generate_markdowns.dart triggered by Github Action. If you enjoy any other view of the data, you could look at the scripts as a starting point to add yours.
We are happy to receive your PRs :)
Here you can find several views created so far:
Speakers: list, socials and companies
Talks with full descriptions, talks sorted by: rooms | formats | levels | topics
| Talk Title | Speakers | Day | Time | Slides & Resources |
|---|---|---|---|---|
| Welcome Address | Greg Fawson, Majid Hajian, Simon Lightfoot | Wednesday | 09:00 AM | |
| Let's go far with Flutter | Kevin Moore | Wednesday | 09:20 AM | |
| Ship > Hype: Rolling Out AI at Scale to 60 Android Engineers | Ilya Savin | Wednesday | 10:25 AM | |
| Flutter, Flame, and Fragment Shaders | Renan Araujo | Wednesday | 10:25 AM | Demo |
| The IDE Flutter Deserves | Michael McRoskey | Wednesday | 10:25 AM | |
| Flutter Plugins - From Method Channels to Native Interop | Dominik Roszkowski | Wednesday | 10:25 AM | |
| Mastering Efficiency in 2025: How Are You Building Faster with Flutter? | Mateusz Wojtczak | Wednesday | 10:25 AM | |
| Why Your Context Doesn’t Work (And How to Fix It) | Bettina Carrizo | Wednesday | 10:25 AM | |
| DIY In-App Locale Editor with slang | Łukasz Wiśniewski | Wednesday | 11:20 AM | |
| Fearless Flutter Debugging: When All Else Fails, Hack the Tools! | Mateusz Wojtczak | Wednesday | 11:20 AM | |
| Flutter Widgets Probably Haven’t Heard Of | Majid Hajian | Wednesday | 11:20 AM | |
| How to design a Dart package with hooks | Moritz Sümmermann | Wednesday | 11:20 AM | |
| Pub Workspaces | Lukas Klingsbo 💙 | Wednesday | 11:55 AM | |
| Automation for Enterprise-Scale Flutter Development | Anna Leushchenko | Wednesday | 11:55 AM | |
| No touch. No gestures. Can you still build a Great UX? | Vadym Pinchuk | Wednesday | 11:55 AM | |
| From Zero to Flutter Favorite: What Makes a Great Dart & Flutter Package? | Jonas Uekötter, Christoph Schlüter | Wednesday | 11:55 AM | |
| From fear to air: embracing over-the-air app updates | Mangirdas Kazlauskas | Wednesday | 11:55 AM | |
| I don't have any technical debt | Jason Toms | Wednesday | 11:55 AM | |
| Let’s Talk About Memory Leaks In Dart And Flutter | Majid Hajian | Wednesday | 01:45 PM | |
| Who is a Native Bindings Author and why you should be one | Hossein Yousefi | Wednesday | 01:45 PM | |
| AnimatedTo: A Game Changer for Your Moving Animations | Tsuyoshi Chujo | Wednesday | 01:45 PM | |
| No More Anxiety: How to Use iOS Extensions in Your Flutter App | Lucas Goldner | Wednesday | 01:45 PM | |
| Navigating the Shift from Code to Leadership | Thomas Hanning | Wednesday | 01:45 PM | |
| Monetization Strategies for Flutter Apps: Beyond the Basics | Ivanna Kaceviča | Wednesday | 01:45 PM | |
| Building a Strong Engineering Culture | Stelios Frantzeskakis | Wednesday | 02:40 PM | |
| Clean Code Push: Integrating Shorebird CodePush into Scalable Flutter Architectures | Ümit Duran | Wednesday | 02:40 PM | |
| To SQL or NoSQL? Firebase is the Answer | Daria Orlova | Wednesday | 02:40 PM | |
| AI in Flutter Development: What’s Actually Useful? | Esra Kadah, Ivanna Kaceviča | Wednesday | 02:40 PM | |
| Taming Legacy: Refactoring Patterns for Large Flutter Codebases | Marcin Chudy | Wednesday | 02:40 PM | |
| Unlocking Native Power: Deep Dive into Dart Build Hooks | Daco Harkes | Wednesday | 02:40 PM | |
| Ensuring quality throughout the application lifecycle | Jonas Uekötter | Wednesday | 03:45 PM | |
| Flutter with WebRTC for real-time screen sharing | Stanislav Sydorenko | Wednesday | 03:45 PM | |
| Test Semantics with Golden Tests | Sandra Lundh | Wednesday | 03:45 PM | |
Lint Smarter, Not Harder: Migrating leancode_lint to the New Dart Analyzer Plugin System |
Piotr Rogulski | Wednesday | 03:45 PM | |
| Faster, Smarter Releases: Accelerating Mobile App Deployments | Omkar Pimple | Wednesday | 04:20 PM | |
| Rethinking Flutter Interviews in the AI Era | Vadym Pinchuk, Elaine Dias Batista | Wednesday | 04:20 PM | |
| Using Dart FFI for Compute-Heavy Tasks in Flutter Apps | Robert Odrowaz-Sypniewski | Wednesday | 04:20 PM | |
| Mastering CustomPainter: Going Beyond Widgets in Flutter | Sofia Rey | Wednesday | 04:20 PM | |
| Under the Hood of ScrollViews | Dominik Šimoník | Wednesday | 04:20 PM | |
| Lessons learned after helping more than 2000 Flutter teams build their own design system | Lucas Josefiak | Wednesday | 04:20 PM | |
| The Future is Written in Dart | Eric Seidel | Thursday | 09:20 AM | |
| Flipping the Testing Pyramid - Smarter Widget Testing with Spot & Robots | Pascal Welsch | Thursday | 10:30 AM | |
| Polish Before Pitch: Making Your Flutter App Feel “Alive” Before Fundraising | Enzo Conty | Thursday | 10:30 AM | |
| No More ‘Someone Else’s Problem’: Tackling Tech Debt at Scale | Florian Mierzejewski | Thursday | 10:30 AM | |
| Crash-Proof Flutter: Building Apps That Refuse to Die | Pawan Kumar | Thursday | 10:30 AM | |
| Adding Google Maps Turn-by-Turn Navigation to Your Flutter App | Joonas Kerttula | Thursday | 10:30 AM | |
| Time for Flutter on the Apple Watch | Anton Borries | Thursday | 11:25 AM | |
| Behind the @ – Dart Annotations in Depth | Anna Leushchenko | Thursday | 11:25 AM | |
| Exploring Real-Time 3D in Flutter with Gaussian Splatting – An Early Field Report | Jesper Bellenbaum, Tim Lehmann | Thursday | 11:25 AM | |
| I’m the entry point now | Marcin Wróblewski | Thursday | 11:25 AM | |
| From Plug-and-Play to Fully Custom: Building Flexible and Overridable Features | Mateusz Rus | Thursday | 12:00 PM | |
| Flutter for Makers: Create Interactive Experiences Using Flutter, Arduino, RPi, and More! | Matthew Jones | Thursday | 12:00 PM | Talk Repo, Dash Crochet Pattern |
| Simpler state management with Dart on the server and synced databases | Simon Binder | Thursday | 12:00 PM | |
| Faster, Smarter Releases: Using AI to Accelerate Mobile Deployments in Flutter | Omkar Pimple | Thursday | 12:00 PM | |
| Quick Start MCP with Dart: Building LLM Context Servers Now | Jhin Lee | Thursday | 12:00 PM | |
| Rolling Out AI at Scale in Mobile Engineering Teams | Ilya Savin, Maia Grotepass | Thursday | 12:00 PM | |
| Joining at Staff+: Thriving in a Senior Role Without a Map | Xavier F. Gouchet | Thursday | 01:50 PM | |
| The Flutter Journey of Building a Live Streaming App — With a Side of Performance Tuning | Yugo Sugiyama | Thursday | 01:50 PM | |
| No More Jank: How to Keep Your Flutter App Smooth and Snappy | Shree Bhagwat | Thursday | 01:50 PM | |
| Vibe Coding Full-Stack Dart – Build with Joy Beyond the UI | Viktor Lidholt | Thursday | 01:50 PM | |
| Design Systems in Practice: How Flutter Teams Save Time and Align with Design | Anton Borries, Lucas Josefiak | Thursday | 01:50 PM | |
| Kalender: A Calendar package in the spirit of Flutter | Werner Scholtz | Thursday | 01:50 PM | |
| Server-Side Rendering for Flutter Web: Promising Paths or Dead End? | Simon Auer | Thursday | 02:45 PM | |
| The DX Factor: From Developer Experience to Business Value | Alessandro Mautone | Thursday | 02:45 PM | |
| Multi-Radio Flutter: Architecting Apps with UWB, BLE, and Beyond | Ahmed Hamdan | Thursday | 02:45 PM | |
| Building Offline AI Agent in your Flutter app | Sasha Denisov | Thursday | 02:45 PM | |
| Streamlining Flutter Releases: What’s Your Process? | Alba Torres Rodríguez | Thursday | 02:45 PM | |
| Powering offline-first forestry in Europe's wilds | Alexander Thiele | Thursday | 02:45 PM | |
| Live-Coding Custom Widgets with Simon | Simon Lightfoot | Thursday | 03:45 PM | |
| It's Not Just Liquid Glass: Building Physics-Driven Flutter Apps That Feel Real | Tim Lehmann, Jesper Bellenbaum | Thursday | 03:45 PM | |
| Flutter Vibes Only: Join Us for the Flutter Vibe-Coding Workshop | Ivanna Kaceviča, Esra Kadah | Thursday | 03:45 PM | |
| Performant Scrolling Layouts With Slivers | Michael Lazebny | Thursday | 03:45 PM | |
| The Indie Flutter Journey: Wins, Woes, and What We’d Do Differently | Daria Orlova, Cagatay Ulusoy | Thursday | 03:45 PM | |
| The Art of Feature Delivery: Practical Tactics for Tech Leads and EMs | Zoe Farooq | Thursday | 03:45 PM | |
| Streamlining Development with the Monorepo Ecosystem | Adam Eba | Thursday | 04:40 PM | |
| Tech Leadership in a Fast-Changing Stack | Shree Bhagwat | Thursday | 04:40 PM | |
| Connect: gRPC that "works everywhere" | Kirill Bubochkin | Thursday | 04:40 PM | |
| Breaking Career Plateaus: What’s Really Holding You Back in Tech? | Sandra-Lorena Bahlmann | Thursday | 04:40 PM | |
| Banking on Flutter – The Virgin Money Journey | Łukasz Kosman, Gary Mclellan | Thursday | 04:40 PM | |
| The "fastest" application of Flutter of all time! | David DeRemer, Kyle Crouse | Friday | 09:20 AM | |
| Nested Navigation in flutter web | Renuka Kelkar | Friday | 10:30 AM | |
| From Flutter to Full-Stack: A Practical Guide to Full-stack Development | Salih Guler | Friday | 10:30 AM | |
| Building a Full-Stack App for Apple Wallet Passes | Marcos Sevilla | Friday | 10:30 AM | |
| Build Your Own AI Sidekick with Flutter | Moritz Theis, Alexander Thiele | Friday | 10:30 AM | |
| App Audit — Acing Your WCAG Accessibility Audit | Enzo Conty | Friday | 10:30 AM | |
| RenderObject layer advantages without writing any RenderObjects | Albert Wolszon | Friday | 11:25 AM | |
| Jaspr - Dart, but for Websites | Kilian Schulte | Friday | 11:25 AM | |
| The Unspoken Shift from Leading a Team to Leading Leaders | Taso Dane | Friday | 11:25 AM | |
| Accelerating the Dev Loop with DCM Lints at Betterment | Casey Rogers | Friday | 11:25 AM | |
| Roundtable Topic: Escaping Chaos: Should Your Flutter Team Move to a Monorepo? | Marcin Chudy | Friday | 11:25 AM | |
| Surviving the Long Game: Maintaining Flutter Apps Over Time | Dominik Roszkowski, Simon Lightfoot | Friday | 01:15 PM | |
| Flutter-Powered Robot Butler: Building a Talking, Thinking IoT Device with Embedded AI | Alex Bordei | Friday | 01:15 PM | |
| Flutter Performance: No Silver Bullet, Only Smart Engineering | Mikhail Zotyev | Friday | 01:15 PM | |
| Beyond the widgets: Evaluating Flutter apps with code assessments | Óscar Martín | Friday | 01:15 PM | |
| Add-to-web: Reusing Flutter via multi-view embedding | Fré Dumazy | Friday | 01:15 PM | Slides, Code sample |
| Proximity Unlocked: What I wish I knew before working with background location | Simon Eckerstorfer | Friday | 02:10 PM | |
| Optimize your productivity with Flutter developer tooling | Elliott Brooks | Friday | 02:10 PM | |
| Live-Coding With Simon (Part II) | Simon Lightfoot, Kevin Moore | Friday | 02:10 PM | |
| This App is Built Different: Advanced Memory Management in Flutter | Maher Jaafar | Friday | 02:10 PM | |
| Successfully reducing Firestore read operations | Nino Handler | Friday | 02:45 PM | |
| Building Design Tools with Flutter: Challenges and Lessons Learned | Bogdan Hobeanu | Friday | 02:45 PM | |
| Why "Where" Matters: Exploring the Power of Location-Aware Apps | Jen Merritt | Friday | 02:45 PM |
This repo has been forked from Andrea Bizzotto's FlutterCon 2024 repo. I just vibe-coded a scraper to populate the JSON files.
Big thanks to all the FlutterCon speakers and their efforts in creating and delivering these amazing talks.
Special thanks go to Martin Bertele who created all the automations and Andrii Matkivskyi who helped with much of the data entry on this repo.