<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Flutter on Mohammad Jashem — Senior Full-Stack Mobile Engineer</title><link>https://mjashem.com/tags/flutter/</link><description>Recent content in Flutter on Mohammad Jashem — Senior Full-Stack Mobile Engineer</description><generator>Hugo -- gohugo.io</generator><language>en</language><managingEditor>mjashem@hotmail.com (Mohammad Jashem)</managingEditor><webMaster>mjashem@hotmail.com (Mohammad Jashem)</webMaster><lastBuildDate>Sat, 18 Jul 2026 00:00:00 +0600</lastBuildDate><atom:link href="https://mjashem.com/tags/flutter/index.xml" rel="self" type="application/rss+xml"/><item><title>Kahf Kids Flutter Clean Architecture: Riverpod, Auto Route</title><link>https://mjashem.com/insights/kahfkids-flutter-clean-architecture/</link><pubDate>Sat, 18 Jul 2026 00:00:00 +0600</pubDate><author>mjashem@hotmail.com (Mohammad Jashem)</author><guid>https://mjashem.com/insights/kahfkids-flutter-clean-architecture/</guid><description>&lt;p&gt;I&amp;rsquo;m Mohammad Jashem — a Senior Mobile Architect. &lt;a
href="https://mjashem.com/projects/kahfkids-flutter-app-deep-dive/"&gt;Kahf Kids&lt;/a&gt; is an Islamic kids&amp;rsquo; education app I built in Flutter and ran in production for about eighteen months across Android, iOS, and Web: curated YouTube videos, Quran, books, games, courses — all behind a parent-controlled PIN. This is the architecture write-up. Not the marketing page — the engineering one.&lt;/p&gt;</description></item><item><title>Crewlix Flutter Clean Architecture: HR App Deep Dive</title><link>https://mjashem.com/insights/building-crewlix-flutter-clean-architecture/</link><pubDate>Fri, 17 Jul 2026 00:00:00 +0600</pubDate><author>mjashem@hotmail.com (Mohammad Jashem)</author><guid>https://mjashem.com/insights/building-crewlix-flutter-clean-architecture/</guid><description>&lt;p&gt;I&amp;rsquo;m Mohammad Jashem — a Senior Mobile Architect. &lt;a
href="https://mjashem.com/projects/crewlix-hr-app/"&gt;Crewlix&lt;/a&gt; is an HR management app I built in Flutter and shipped to Google Play and the App Store: attendance, leave, employee profiles, and a social feed. This is the architecture write-up — not the marketing version, the engineering one.&lt;/p&gt;</description></item><item><title>Flutter Platform-View ANRs on Mali/PowerVR GPUs</title><link>https://mjashem.com/insights/flutter-platform-view-anr-mali-powervr/</link><pubDate>Wed, 08 Jul 2026 00:00:00 +0600</pubDate><author>mjashem@hotmail.com (Mohammad Jashem)</author><guid>https://mjashem.com/insights/flutter-platform-view-anr-mali-powervr/</guid><description>&lt;p&gt;This is the investigation I wish someone had handed me before I spent six weeks patching a Flutter platform-view ANR I couldn&amp;rsquo;t fix in app code. It&amp;rsquo;s the engineering detail behind &lt;a
href="https://mjashem.com/insights/flutter-vs-react-native-vs-expo/"&gt;our full comparison of Flutter vs React Native vs Expo&lt;/a&gt; and the failure mode that ended in &lt;a
href="https://mjashem.com/insights/migrating-kahf-kids-flutter-to-react-native-expo/"&gt;migrating Kahf Kids off Flutter&lt;/a&gt;. Dev forums are full of &lt;em&gt;&amp;ldquo;Flutter WebView ANR on Redmi Note&amp;rdquo;&lt;/em&gt; threads with no real answers — most blame the WebView, tell you to enable hybrid composition, or say clear the cache. None of that fixes this.&lt;/p&gt;</description></item><item><title>Flutter vs React Native vs Expo for MVPs</title><link>https://mjashem.com/insights/flutter-vs-react-native-vs-expo/</link><pubDate>Wed, 08 Jul 2026 00:00:00 +0600</pubDate><author>mjashem@hotmail.com (Mohammad Jashem)</author><guid>https://mjashem.com/insights/flutter-vs-react-native-vs-expo/</guid><description>&lt;p&gt;I&amp;rsquo;m Mohammad Jashem — a Senior Mobile Architect with 7+ years shipping Flutter, React Native, and Expo in production. I&amp;rsquo;ve kept &lt;a
href="https://mjashem.com/projects/ncc-mobile-app/"&gt;one Flutter app alive for seven years across three stores&lt;/a&gt;, I&amp;rsquo;ve &lt;a
href="https://mjashem.com/projects/crewlix-hr-app/"&gt;built an HR platform in Flutter&lt;/a&gt; because Flutter was the right call for that product, and I&amp;rsquo;ve also &lt;a
href="https://mjashem.com/projects/kahfkids-flutter-app-deep-dive/"&gt;migrated a Flutter app off Flutter&lt;/a&gt; when the architecture stopped fitting. So when founders ask me &amp;ldquo;Flutter or React Native or Expo for the MVP,&amp;rdquo; my answer is never &amp;ldquo;it depends.&amp;rdquo; It depends on &lt;em&gt;what&lt;/em&gt; — and I can tell you the what in about ten minutes if you describe the product.&lt;/p&gt;</description></item><item><title>Hire a Flutter Developer in 2026</title><link>https://mjashem.com/insights/hire-flutter-developer-2026/</link><pubDate>Wed, 08 Jul 2026 00:00:00 +0600</pubDate><author>mjashem@hotmail.com (Mohammad Jashem)</author><guid>https://mjashem.com/insights/hire-flutter-developer-2026/</guid><description>&lt;p&gt;If you&amp;rsquo;re hiring a Flutter developer in 2026, you&amp;rsquo;re doing it for one of two reasons: you want one codebase shipping to iOS and Android simultaneously, or you have a Flutter app that needs to stay alive. Both are sound decisions — the hire that goes wrong is the one where the buyer couldn&amp;rsquo;t tell a senior architect from a junior who&amp;rsquo;d shipped one tutorial app.&lt;/p&gt;</description></item><item><title>Maintaining a Flutter App for 7 Years</title><link>https://mjashem.com/insights/maintaining-flutter-app-long-term/</link><pubDate>Wed, 08 Jul 2026 00:00:00 +0600</pubDate><author>mjashem@hotmail.com (Mohammad Jashem)</author><guid>https://mjashem.com/insights/maintaining-flutter-app-long-term/</guid><description>&lt;p&gt;I&amp;rsquo;m Mohammad Jashem — a Senior Mobile Architect, and for the last 7+ years I&amp;rsquo;ve been the maintainer of the &lt;a
href="https://mjashem.com/projects/ncc-mobile-app/"&gt;NCC App&lt;/a&gt;, the student-assistance app for Northwest Career College. It started on Flutter 1.x in 2019. The current build runs on Flutter 3.41.x stable, with Dart 3, Impeller, and Material 3. Same codebase. Same store listings — Google Play, App Store, Amazon Appstore. Zero major production incidents across the entire window.&lt;/p&gt;</description></item><item><title>Why I Migrated Kahf Kids from Flutter to React Native/Expo</title><link>https://mjashem.com/insights/migrating-kahf-kids-flutter-to-react-native-expo/</link><pubDate>Wed, 08 Jul 2026 00:00:00 +0600</pubDate><author>mjashem@hotmail.com (Mohammad Jashem)</author><guid>https://mjashem.com/insights/migrating-kahf-kids-flutter-to-react-native-expo/</guid><description>&lt;p&gt;I&amp;rsquo;m Mohammad Jashem — a Senior Mobile Architect. This is the story of moving &lt;a
href="https://mjashem.com/projects/kahfkids-flutter-app-deep-dive/"&gt;Kahf Kids&lt;/a&gt; off Flutter after roughly eighteen months in production: why the call was forced, what I rebuilt, and how it shipped in three months with an AI-assisted workflow. Not the marketing version — the engineering one.&lt;/p&gt;</description></item><item><title>Why I Switched from Woodpecker to Drone for Flutter CI/CD</title><link>https://mjashem.com/blog/why-i-switched-from-woodpecker-to-drone/</link><pubDate>Mon, 03 Nov 2025 00:00:00 +0600</pubDate><author>mjashem@hotmail.com (Mohammad Jashem)</author><guid>https://mjashem.com/blog/why-i-switched-from-woodpecker-to-drone/</guid><description>&lt;h1 class="relative group"&gt;Why I Switched from Woodpecker to Drone for Flutter CI/CD
&lt;div id="why-i-switched-from-woodpecker-to-drone-for-flutter-cicd" class="anchor"&gt;&lt;/div&gt;
&lt;span
class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100"&gt;
&lt;a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700 !no-underline" href="#why-i-switched-from-woodpecker-to-drone-for-flutter-cicd" aria-label="Anchor"&gt;#&lt;/a&gt;
&lt;/span&gt;
&lt;/h1&gt;
&lt;p&gt;As a mobile developer managing multiple Flutter apps, I invested heavily in building a self-hosted CI/CD pipeline to automate deployments to Google Play Store, Apple App Store, and Amazon Appstore. The goal was simple: automate my nightly builds so I could sleep better while my apps get deployed automatically. What started as a promising setup with Woodpecker CI eventually became a source of constant frustration and sleepless nights, leading me to migrate to Drone CI. This is the technical story of that migration and the countless hours I lost troubleshooting issues that were supposed to save me time.&lt;/p&gt;</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://mjashem.com/blog/why-i-switched-from-woodpecker-to-drone/feature.jpg"/></item><item><title>Kahf Kids: Flutter App &amp; RN/Expo Migration</title><link>https://mjashem.com/projects/kahfkids-flutter-app-deep-dive/</link><pubDate>Sun, 01 Sep 2024 00:00:00 +0600</pubDate><author>mjashem@hotmail.com (Mohammad Jashem)</author><guid>https://mjashem.com/projects/kahfkids-flutter-app-deep-dive/</guid><description>&lt;h2 class="relative group"&gt;Context
&lt;div id="context" class="anchor"&gt;&lt;/div&gt;
&lt;span
class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100"&gt;
&lt;a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700 !no-underline" href="#context" aria-label="Anchor"&gt;#&lt;/a&gt;
&lt;/span&gt;
&lt;/h2&gt;
&lt;p&gt;Kahf Kids is an Islamic education and entertainment app for children — curated YouTube videos, games, Quran, books, and courses behind a parent-controlled PIN — alongside a doctor-consultation surface (DocTime / Healthcare) that puts a VoIP call inside the app. I architected the original Flutter build, shipped it on Android, iOS, and Web, and ran it in production for about eighteen months while the user base grew.&lt;/p&gt;</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://mjashem.com/projects/kahfkids-flutter-app-deep-dive/featured-card.jpg"/></item><item><title>Flutter State Management: What I'd Actually Pick in 2026</title><link>https://mjashem.com/blog/flutter-state-management/</link><pubDate>Wed, 17 Jan 2024 00:00:00 +0600</pubDate><author>mjashem@hotmail.com (Mohammad Jashem)</author><guid>https://mjashem.com/blog/flutter-state-management/</guid><description>&lt;p&gt;I&amp;rsquo;ve shipped three production Flutter apps — the &lt;a
href="https://mjashem.com/projects/ncc-mobile-app/"&gt;NCC App&lt;/a&gt; (seven years and counting), &lt;a
href="https://mjashem.com/projects/kahfkids-flutter-app-deep-dive/"&gt;Kahf Kids&lt;/a&gt;, and &lt;a
href="https://mjashem.com/projects/crewlix-hr-app/"&gt;Crewlix&lt;/a&gt; — and every one of them runs on Riverpod. Not because Riverpod is objectively best. Because after a decade of &lt;code&gt;setState&lt;/code&gt; sprawl, Provider, Bloc, and Riverpod across real codebases, it&amp;rsquo;s the one that stopped costing me time.&lt;/p&gt;</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://mjashem.com/blog/flutter-state-management/featured.png"/></item><item><title>Crewlix HR App: Flutter Clean Architecture</title><link>https://mjashem.com/projects/crewlix-hr-app/</link><pubDate>Sun, 01 Jan 2023 00:00:00 +0600</pubDate><author>mjashem@hotmail.com (Mohammad Jashem)</author><guid>https://mjashem.com/projects/crewlix-hr-app/</guid><description>&lt;h2 class="relative group"&gt;Context
&lt;div id="context" class="anchor"&gt;&lt;/div&gt;
&lt;span
class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100"&gt;
&lt;a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700 !no-underline" href="#context" aria-label="Anchor"&gt;#&lt;/a&gt;
&lt;/span&gt;
&lt;/h2&gt;
&lt;p&gt;Crewlix is an HR management mobile app for Android and iOS. It digitizes the daily HR operations of a modern workforce — attendance, leave, employee profiles, internal communication — behind a single login on a phone. I built it in Flutter, end to end, and shipped it to both stores.&lt;/p&gt;</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://mjashem.com/projects/crewlix-hr-app/featured-card.jpg"/></item><item><title>Flutter Clean Architecture: 7-Year, 70-Module Case Study</title><link>https://mjashem.com/projects/ncc-mobile-app/</link><pubDate>Fri, 01 Feb 2019 00:00:00 +0600</pubDate><author>mjashem@hotmail.com (Mohammad Jashem)</author><guid>https://mjashem.com/projects/ncc-mobile-app/</guid><description>&lt;h2 class="relative group"&gt;At a glance
&lt;div id="at-a-glance" class="anchor"&gt;&lt;/div&gt;
&lt;span
class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100"&gt;
&lt;a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700 !no-underline" href="#at-a-glance" aria-label="Anchor"&gt;#&lt;/a&gt;
&lt;/span&gt;
&lt;/h2&gt;
&lt;p&gt;A student app built once to last.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;7+ years&lt;/strong&gt; maintained, from Flutter 1.x through the latest stable&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;70+ feature modules&lt;/strong&gt; in a single codebase&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;3 app stores&lt;/strong&gt; — Google Play, App Store, and Amazon Appstore&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Solo-owned for six years&lt;/strong&gt;, then a team&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Zero major production incidents&lt;/strong&gt; across the whole window&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;One Clean Architecture refactor&lt;/strong&gt;, made in year two — still in place&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This is the project I point to when someone asks what &amp;ldquo;senior&amp;rdquo; means in mobile engineering. Not the flashiest build. The one that stays up.&lt;/p&gt;</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://mjashem.com/projects/ncc-mobile-app/featured-card.jpg"/></item></channel></rss>