Tutorials by topic
Every tutorial on bidev.dev, organized by topic. Click a tag to jump straight to that section.
Recently Published
View all articles
The Dart and Flutter MCP Server: What It Gives Your AI Assistant
The Dart and Flutter MCP server lets an AI assistant ask your real project questions instead of guessing. Here's what it exposes, how to connect it, and where it still falls short.

Flutter 3.47.5 Fixes the iOS 27 Debugging Crash
Flutter 3.47.5 is a small stable patch, but the iOS 27 fix is the one worth updating for if you debug on a physical device. Here's exactly what changed and what didn't.

Setting Up AI Coding Agents for Flutter: What Actually Works
Flutter's official docs now ship setup instructions for Claude Code, Cursor, Antigravity, Copilot, and Codex, all wired to the same Dart MCP server. Here's what the plugin actually gives you and whether it's worth installing.

Testing Riverpod Providers: A Practical Setup
Testing Riverpod providers is straightforward once you stop trying to test them like plain functions. Here's a working setup for overriding dependencies, testing AsyncNotifiers, and avoiding the most common test-flakiness trap.

Handling Expired and Refreshed JWTs in a Flutter App
A JWT expiring mid-session is normal, not an edge case. Here's a practical pattern for detecting expiry, refreshing silently, and retrying the original request without the user noticing anything happened.

Debugging Gradle Build Failures in Flutter Android Builds
Gradle failures in a Flutter Android build almost always trace to one of four causes. Here's how to actually find the real error instead of the summary line, and what to check in what order.

Converting a Messy API Response into a Clean Dart Model
Real APIs return inconsistent, nullable, badly-nested JSON. Here's a practical process for turning that into a clean, null-safe Dart model, including where a JSON-to-Dart generator actually helps and where it doesn't.

RenderFlex Overflow: Every Real Cause, Not Just "Wrap It in Expanded"
The yellow-and-black stripes have more than one real cause, and Expanded isn't always the fix. A full walkthrough of Row/Column overflow, when to use Expanded vs Flexible vs Wrap, and why testing one screen size isn't enough.

Widget Lifecycle Bugs: setState After Dispose and Friends
The setState-after-dispose exception is really a timing bug, not a Flutter bug. Here's the full pattern: what triggers it, why the obvious fix is usually incomplete, and how to actually close the gap.
flutter
20
The Dart and Flutter MCP Server: What It Gives Your AI Assistant
The Dart and Flutter MCP server lets an AI assistant ask your real project questions instead of guessing. Here's what it exposes, how to connect it, and where it still falls short.

Flutter 3.47.5 Fixes the iOS 27 Debugging Crash
Flutter 3.47.5 is a small stable patch, but the iOS 27 fix is the one worth updating for if you debug on a physical device. Here's exactly what changed and what didn't.

Setting Up AI Coding Agents for Flutter: What Actually Works
Flutter's official docs now ship setup instructions for Claude Code, Cursor, Antigravity, Copilot, and Codex, all wired to the same Dart MCP server. Here's what the plugin actually gives you and whether it's worth installing.

RenderFlex Overflow: Every Real Cause, Not Just "Wrap It in Expanded"
The yellow-and-black stripes have more than one real cause, and Expanded isn't always the fix. A full walkthrough of Row/Column overflow, when to use Expanded vs Flexible vs Wrap, and why testing one screen size isn't enough.

Widget Lifecycle Bugs: setState After Dispose and Friends
The setState-after-dispose exception is really a timing bug, not a Flutter bug. Here's the full pattern: what triggers it, why the obvious fix is usually incomplete, and how to actually close the gap.

Supabase vs Firebase for Flutter : Which Backend Should You Choose ?
Supabase vs Firebase for Flutter, compared honestly: database model, auth, realtime, pricing, and which one actually fits your app in 2026.
ai tools
7
The Dart and Flutter MCP Server: What It Gives Your AI Assistant
The Dart and Flutter MCP server lets an AI assistant ask your real project questions instead of guessing. Here's what it exposes, how to connect it, and where it still falls short.

Setting Up AI Coding Agents for Flutter: What Actually Works
Flutter's official docs now ship setup instructions for Claude Code, Cursor, Antigravity, Copilot, and Codex, all wired to the same Dart MCP server. Here's what the plugin actually gives you and whether it's worth installing.

Dart's Skills CLI 1.0: Your Flutter Packages Can Now Ship Their Own AI Instructions
Dart's new skills CLI lets package authors bundle AI agent skills directly with their code. Here's what that means for Flutter developers using Claude, Copilot, or Cursor.

Build AI Chat Apps with Flutter — Gemini Guide (2026)
A no-fluff guide to building AI chat apps in Flutter with Gemini — streaming, chat UI, error handling, and the mistakes I made so you don't have to.

AI Code Generation with Flutter — Using Claude Code in Your Workflow
Learn how to use Claude Code with Flutter to generate code, build features faster, improve testing, and streamline your development workflow with AI-powered coding assistance.

Claude Fable 5: What Developers Need to Know
Claude Fable 5 is Anthropic's most powerful public model ever. Here's what developers need to know about its capabilities, pricing, and how to use it in Flutter apps.
ai
5
The Dart and Flutter MCP Server: What It Gives Your AI Assistant
The Dart and Flutter MCP server lets an AI assistant ask your real project questions instead of guessing. Here's what it exposes, how to connect it, and where it still falls short.

Setting Up AI Coding Agents for Flutter: What Actually Works
Flutter's official docs now ship setup instructions for Claude Code, Cursor, Antigravity, Copilot, and Codex, all wired to the same Dart MCP server. Here's what the plugin actually gives you and whether it's worth installing.

Dart's Skills CLI 1.0: Your Flutter Packages Can Now Ship Their Own AI Instructions
Dart's new skills CLI lets package authors bundle AI agent skills directly with their code. Here's what that means for Flutter developers using Claude, Copilot, or Cursor.

Build AI Chat Apps with Flutter — Gemini Guide (2026)
A no-fluff guide to building AI chat apps in Flutter with Gemini — streaming, chat UI, error handling, and the mistakes I made so you don't have to.

AI Code Generation with Flutter — Using Claude Code in Your Workflow
Learn how to use Claude Code with Flutter to generate code, build features faster, improve testing, and streamline your development workflow with AI-powered coding assistance.
android
5
Debugging Gradle Build Failures in Flutter Android Builds
Gradle failures in a Flutter Android build almost always trace to one of four causes. Here's how to actually find the real error instead of the summary line, and what to check in what order.

Flutter 3.47 Is Here: Material and Cupertino Just Left the SDK
Flutter 3.47 breaks Material and Cupertino out of the SDK, defaults to Impeller on desktop, and preps for iOS 27. Here's what actually needs your attention.

Android 17 Is Here: Everything Developers Need to Know
Android 17 drops with AppFunctions AI agents, mandatory large-screen support, memory limits, post-quantum crypto, and Compose-first development. Full breakdown.

Flutter vs React Native in 2026: Which One Should You Learn?
Flutter vs React Native in 2026 — performance, salaries, jobs, AI tools, and code compared. Find out which framework fits your career, startup, or business.

Flutter 2026 Roadmap — Everything from Google I/O
Most years the Flutter Google I/O talk is a handful of new widgets and a performance chart. 2026 is not that year.
dart
5
The Dart and Flutter MCP Server: What It Gives Your AI Assistant
The Dart and Flutter MCP server lets an AI assistant ask your real project questions instead of guessing. Here's what it exposes, how to connect it, and where it still falls short.

Converting a Messy API Response into a Clean Dart Model
Real APIs return inconsistent, nullable, badly-nested JSON. Here's a practical process for turning that into a clean, null-safe Dart model, including where a JSON-to-Dart generator actually helps and where it doesn't.

Dart's Skills CLI 1.0: Your Flutter Packages Can Now Ship Their Own AI Instructions
Dart's new skills CLI lets package authors bundle AI agent skills directly with their code. Here's what that means for Flutter developers using Claude, Copilot, or Cursor.

Flutter Biometric Authentication — Face ID & Fingerprint Guide
Learn how to implement biometric authentication (Face ID and fingerprint) in Flutter using the local_auth package. Complete 2026 guide with code examples.

Flutter Clean Architecture Guide 2026 – Complete Folder Structure
A production-ready Flutter Clean Architecture guide covering domain, data, and presentation layers with dependency injection, use cases, and real Dart code examples.
developer tools
5
The Dart and Flutter MCP Server: What It Gives Your AI Assistant
The Dart and Flutter MCP server lets an AI assistant ask your real project questions instead of guessing. Here's what it exposes, how to connect it, and where it still falls short.

Flutter Local Storage in 2026: Hive, Isar, and SharedPreferences Aren't What You Think
Hive and Isar were both abandoned by their original author. Here's what that actually means for your Flutter app, and what to use instead in 2026.

Flutter vs React Native in 2026: Which One Should You Learn?
Flutter vs React Native in 2026 — performance, salaries, jobs, AI tools, and code compared. Find out which framework fits your career, startup, or business.

Claude Fable 5: What Developers Need to Know
Claude Fable 5 is Anthropic's most powerful public model ever. Here's what developers need to know about its capabilities, pricing, and how to use it in Flutter apps.

Best AI Tools for Developers in 2026 – Ranked & Reviewed
The AI tools that actually make you faster in 2026. Claude Code, GitHub Copilot, Cursor, Vercel v0, and more — with real productivity comparisons and when to use each.
architecture
4
Converting a Messy API Response into a Clean Dart Model
Real APIs return inconsistent, nullable, badly-nested JSON. Here's a practical process for turning that into a clean, null-safe Dart model, including where a JSON-to-Dart generator actually helps and where it doesn't.

RenderFlex Overflow: Every Real Cause, Not Just "Wrap It in Expanded"
The yellow-and-black stripes have more than one real cause, and Expanded isn't always the fix. A full walkthrough of Row/Column overflow, when to use Expanded vs Flexible vs Wrap, and why testing one screen size isn't enough.

Widget Lifecycle Bugs: setState After Dispose and Friends
The setState-after-dispose exception is really a timing bug, not a Flutter bug. Here's the full pattern: what triggers it, why the obvious fix is usually incomplete, and how to actually close the gap.

Flutter Clean Architecture Guide 2026 – Complete Folder Structure
A production-ready Flutter Clean Architecture guide covering domain, data, and presentation layers with dependency injection, use cases, and real Dart code examples.
firebase
4
Supabase vs Firebase for Flutter : Which Backend Should You Choose ?
Supabase vs Firebase for Flutter, compared honestly: database model, auth, realtime, pricing, and which one actually fits your app in 2026.

AI Code Generation with Flutter — Using Claude Code in Your Workflow
Learn how to use Claude Code with Flutter to generate code, build features faster, improve testing, and streamline your development workflow with AI-powered coding assistance.

Flutter Biometric Authentication — Face ID & Fingerprint Guide
Learn how to implement biometric authentication (Face ID and fingerprint) in Flutter using the local_auth package. Complete 2026 guide with code examples.

Firebase Push Notifications in Flutter – Complete 2026 Guide
Master Firebase Cloud Messaging (FCM) in Flutter. Covers foreground, background, and terminated app states, notification channels, deep links, and production-ready Dart code.
ios
4
Flutter 3.47.5 Fixes the iOS 27 Debugging Crash
Flutter 3.47.5 is a small stable patch, but the iOS 27 fix is the one worth updating for if you debug on a physical device. Here's exactly what changed and what didn't.

Flutter 3.47 Is Here: Material and Cupertino Just Left the SDK
Flutter 3.47 breaks Material and Cupertino out of the SDK, defaults to Impeller on desktop, and preps for iOS 27. Here's what actually needs your attention.

Flutter vs React Native in 2026: Which One Should You Learn?
Flutter vs React Native in 2026 — performance, salaries, jobs, AI tools, and code compared. Find out which framework fits your career, startup, or business.

Flutter 2026 Roadmap — Everything from Google I/O
Most years the Flutter Google I/O talk is a handful of new widgets and a performance chart. 2026 is not that year.
mobile
4
Android 17 Is Here: Everything Developers Need to Know
Android 17 drops with AppFunctions AI agents, mandatory large-screen support, memory limits, post-quantum crypto, and Compose-first development. Full breakdown.

Flutter vs React Native in 2026: Which One Should You Learn?
Flutter vs React Native in 2026 — performance, salaries, jobs, AI tools, and code compared. Find out which framework fits your career, startup, or business.

Flutter Biometric Authentication — Face ID & Fingerprint Guide
Learn how to implement biometric authentication (Face ID and fingerprint) in Flutter using the local_auth package. Complete 2026 guide with code examples.

Firebase Push Notifications in Flutter – Complete 2026 Guide
Master Firebase Cloud Messaging (FCM) in Flutter. Covers foreground, background, and terminated app states, notification channels, deep links, and production-ready Dart code.
performance
3
Flutter 3.47 Is Here: Material and Cupertino Just Left the SDK
Flutter 3.47 breaks Material and Cupertino out of the SDK, defaults to Impeller on desktop, and preps for iOS 27. Here's what actually needs your attention.

Flutter Local Storage in 2026: Hive, Isar, and SharedPreferences Aren't What You Think
Hive and Isar were both abandoned by their original author. Here's what that actually means for your Flutter app, and what to use instead in 2026.

Flutter vs React Native in 2026: Which One Should You Learn?
Flutter vs React Native in 2026 — performance, salaries, jobs, AI tools, and code compared. Find out which framework fits your career, startup, or business.
productivity
3
Setting Up AI Coding Agents for Flutter: What Actually Works
Flutter's official docs now ship setup instructions for Claude Code, Cursor, Antigravity, Copilot, and Codex, all wired to the same Dart MCP server. Here's what the plugin actually gives you and whether it's worth installing.

Flutter 2026 Roadmap — Everything from Google I/O
Most years the Flutter Google I/O talk is a handful of new widgets and a performance chart. 2026 is not that year.

Best AI Tools for Developers in 2026 – Ranked & Reviewed
The AI tools that actually make you faster in 2026. Claude Code, GitHub Copilot, Cursor, Vercel v0, and more — with real productivity comparisons and when to use each.
riverpod
3
Testing Riverpod Providers: A Practical Setup
Testing Riverpod providers is straightforward once you stop trying to test them like plain functions. Here's a working setup for overriding dependencies, testing AsyncNotifiers, and avoiding the most common test-flakiness trap.

Riverpod vs Bloc : Which State Management Should You Choose?

Build AI Chat Apps with Flutter — Gemini Guide (2026)
A no-fluff guide to building AI chat apps in Flutter with Gemini — streaming, chat UI, error handling, and the mistakes I made so you don't have to.
state-management
3
Testing Riverpod Providers: A Practical Setup
Testing Riverpod providers is straightforward once you stop trying to test them like plain functions. Here's a working setup for overriding dependencies, testing AsyncNotifiers, and avoiding the most common test-flakiness trap.

Riverpod vs Bloc : Which State Management Should You Choose?

Flutter State Management Explained: Provider vs Riverpod vs Bloc
Compare Provider, Riverpod, and Bloc in Flutter with examples, pros, cons, architecture tips, and project-based recommendations.
api
2
Handling Expired and Refreshed JWTs in a Flutter App
A JWT expiring mid-session is normal, not an edge case. Here's a practical pattern for detecting expiry, refreshing silently, and retrying the original request without the user noticing anything happened.

Build a REST API Call in Flutter with Dio and Riverpod — Complete Guide
Learn how to build clean, production-ready REST API calls in Flutter using Dio and Riverpod. Includes interceptors, error handling, and architecture patterns.