<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Basem Shaaban Mohamed</title>
    <description>The latest articles on DEV Community by Basem Shaaban Mohamed (@basemshaaban).</description>
    <link>https://dev.to/basemshaaban</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4147654%2Fec419471-8e48-4153-9bde-b2acdf3d7fc3.png</url>
      <title>DEV Community: Basem Shaaban Mohamed</title>
      <link>https://dev.to/basemshaaban</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/basemshaaban"/>
    <language>en</language>
    <item>
      <title>I Built a Block Puzzle Game with Flutter — Here's What I Learned</title>
      <dc:creator>Basem Shaaban Mohamed</dc:creator>
      <pubDate>Fri, 02 Oct 2026 13:04:40 +0000</pubDate>
      <link>https://dev.to/basemshaaban/i-built-a-block-puzzle-game-with-flutter-heres-what-i-learned-ff5</link>
      <guid>https://dev.to/basemshaaban/i-built-a-block-puzzle-game-with-flutter-heres-what-i-learned-ff5</guid>
      <description>&lt;p&gt;After shipping my first game, &lt;strong&gt;Baron: Tower Siege&lt;/strong&gt;, I needed a change of pace. Tower defense games are all about systems colliding — waves, upgrades, pathfinding. For my second game I wanted something simpler on the surface, but just as tricky underneath. So I built a block puzzle game.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Puzzle: Block Blast&lt;/strong&gt; is a classic block puzzle: drag colorful block pieces onto the grid, fill rows or columns to clear them, and keep the board alive as long as you can. Clean UI, fully offline, no nonsense — the kind of game I actually like playing in waiting rooms and during long calls.&lt;/p&gt;

&lt;p&gt;Here is what building it with Flutter taught me.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Grid rendering is deceptively simple
&lt;/h2&gt;

&lt;p&gt;A puzzle grid looks easy — it's just squares, right? But once you are repainting the board continuously during a drag, every dropped frame shows. I learned to keep the grid rendering dumb and cheap: precomputed layout values, minimal widget rebuilds, and &lt;code&gt;CustomPainter&lt;/code&gt; for the parts that had to move fast. The real lesson: profile on a low-end device early. My mid-range phone forgave everything; a cheap device did not.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Game state with Provider held up better than I expected
&lt;/h2&gt;

&lt;p&gt;I used Provider for the game state — board cells, current pieces, score, game-over checks. Honestly, I picked it because I already knew it from regular app development, not because it was the "correct" game architecture. It worked fine. The key was keeping the state model separate from the UI: a pure Dart class holding the board and the rules, with widgets just listening for changes. No framework magic, no over-engineering.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Small animations make or break the feel
&lt;/h2&gt;

&lt;p&gt;Clearing a row with no animation feels broken. I added simple scale and fade animations when lines clear, and a subtle bounce when pieces snap into place. Nothing fancy — Flutter's built-in animation widgets were enough. The takeaway: players feel polish through motion, not through more features.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Keeping the APK light is a discipline
&lt;/h2&gt;

&lt;p&gt;It is tempting to pull in a package for everything. Every dependency adds weight and build complexity, so I kept the list short and used Flutter's built-in widgets wherever possible. The result is a small, fast APK that installs in seconds — and that matters for a casual puzzle game, because nobody waits around for a huge download just to try a puzzle game.&lt;/p&gt;

&lt;h2&gt;
  
  
  Closing thoughts
&lt;/h2&gt;

&lt;p&gt;This is very much a living project. I have a list of ideas — more game modes, better piece previews, maybe a daily challenge — but first I want to hear what real players run into.&lt;/p&gt;

&lt;p&gt;The game is free on Google Play, so if you like puzzle games, try it and tell me what you think:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://play.google.com/store/apps/details?id=com.mbs.puzzleblockblast" rel="noopener noreferrer"&gt;https://play.google.com/store/apps/details?id=com.mbs.puzzleblockblast&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;And if you've shipped a game with Flutter yourself, what surprised you most? I'd genuinely like to know.&lt;/p&gt;

</description>
      <category>flutter</category>
      <category>gamedev</category>
      <category>mobile</category>
      <category>dart</category>
    </item>
    <item>
      <title>I built a tower defense game with Flutter — here's what I learned</title>
      <dc:creator>Basem Shaaban Mohamed</dc:creator>
      <pubDate>Mon, 28 Sep 2026 16:56:39 +0000</pubDate>
      <link>https://dev.to/basemshaaban/i-built-a-tower-defense-game-with-flutter-heres-what-i-learned-1dmf</link>
      <guid>https://dev.to/basemshaaban/i-built-a-tower-defense-game-with-flutter-heres-what-i-learned-1dmf</guid>
      <description>&lt;p&gt;Hi! I'm Basem Shaaban Mohamed, a solo Flutter developer from Egypt. I've been working with Flutter for about 5 years and have 8 apps published on Google Play.&lt;/p&gt;

&lt;p&gt;I built &lt;strong&gt;Baron: Tower Siege&lt;/strong&gt;, a tower defense game, using Flutter and the Flame engine — the stack I know best.&lt;/p&gt;

&lt;h2&gt;
  
  
  What's in the game
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;🗼 10 tower types (archers, cannons, mages…)&lt;/li&gt;
&lt;li&gt;👹 9 enemy types (goblins, orcs, wolves, flyers, dragons)&lt;/li&gt;
&lt;li&gt;⬆️ Tower upgrades up to level 4&lt;/li&gt;
&lt;li&gt;🐣 A Monster Farm — hatch and train monsters&lt;/li&gt;
&lt;li&gt;🗺️ Chapter maps across forest, desert, snow, volcano and swamp&lt;/li&gt;
&lt;li&gt;🎮 Multiple game modes and daily rewards&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Try it and share feedback
&lt;/h2&gt;

&lt;p&gt;The game is free on Google Play:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://play.google.com/store/apps/details?id=com.mbs.towersiege" rel="noopener noreferrer"&gt;https://play.google.com/store/apps/details?id=com.mbs.towersiege&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you're a developer or a player, I'd love your feedback — especially on balance, difficulty and performance. What would you build? 🗼&lt;/p&gt;

</description>
      <category>flutter</category>
      <category>gamedev</category>
      <category>dart</category>
      <category>android</category>
    </item>
  </channel>
</rss>
