Recent Blog Posts
Insights on AI Agents, Modern Web, and the Future of Engineering.
AnimatedList in Flutter: Smooth Insert and Remove Animations
Animate rows entering and leaving a Flutter list with AnimatedList: GlobalKey setup, index-synced insert/remove, a SizeTransition exit builder, and test tips.
DataTable in Flutter: Sorting, Selection, and Styling Tabular Data
Use Flutter's DataTable for sortable, selectable tabular data — plus when to switch to DataTableSource and how to style and scroll it correctly.
Swipe to Delete: Mastering Dismissible in Flutter
Build production-ready swipe-to-dismiss lists with Dismissible, covering keys, confirmDismiss vetoes, and correct list mutation.
Navigation Drawers in Flutter: From Basics to Adaptive Patterns
Build Material navigation drawers with Scaffold, DrawerHeader, endDrawer, and an adaptive NavigationRail strategy for wide screens.
Flutter Web Performance Optimization: Profiling and Tuning in 2026
Profile Flutter web in Chrome DevTools, enable timeline flags, cut bundle size, choose Wasm or JS, and eliminate frame jank.
GridView.builder in Flutter: Efficient Lazy Grids at Any Size
Build efficient lazy grids in Flutter — choosing delegates, computing childAspectRatio, responsive column counts, sliver integration, and performance pitfalls.
InheritedWidget Patterns: The Mechanism Behind Flutter's Scoped State
How InheritedWidget really works: dependency vs one-shot lookups, the static of(context) convention, updateShouldNotify, a minimal config provider, InheritedNotifier, and testing.
Overlay and OverlayEntry: Building Floating UI in Flutter
Build tooltips, toasts, and anchored floating menus with Overlay and OverlayEntry — lifecycle, stacking order, and the leak gotchas that bite in production.
PageView in Flutter: Building Swipeable Onboarding and Carousels
Build onboarding flows, carousels, and horizontal pagers with PageView, PageController, and a custom dot indicator.
File System Paths in Flutter: A Practical Guide to path_provider
Resolve temp, documents, support, downloads, and external directories in Flutter with path_provider, including web guards and platform mocks for tests.
QR Code Scanning in Flutter with mobile_scanner
Build a production-ready QR scanner in Flutter with mobile_scanner: permissions, controller configuration, lifecycle handling, and deduplication.
Pull-to-Refresh in Flutter: RefreshIndicator Patterns and Pitfalls
Implement pull-to-refresh correctly with RefreshIndicator — the Future<void> contract, styling, CustomScrollView usage, trigger modes, and the short-list pitfall.