CLAUDE LABJP
MCP — The July 28 MCP spec release candidate drops the Mcp-Session-Id header and goes stateless, so remote MCP servers no longer need sticky sessionsAPPS — The same release adds MCP Apps for server-rendered UI and a Tasks extension for long-running workMEMORY — The Python 0.116.0, TypeScript 0.110.0, and Go 1.56.0 SDKs now send agent-memory-2026-07-22 on every memory store callSPILL — Output from agent_toolset and MCP tools past 100K characters now spills to a file in the sandbox, with the model receiving a truncated preview it can expandBG — MCP tool calls running past two minutes move to the background automatically, keeping the session usable; tune it with CLAUDE_CODE_MCP_AUTO_BACKGROUND_MSRESUME — Typing /resume in the agent view opens a picker of past sessions and brings your pick back as a background sessionMCP — The July 28 MCP spec release candidate drops the Mcp-Session-Id header and goes stateless, so remote MCP servers no longer need sticky sessionsAPPS — The same release adds MCP Apps for server-rendered UI and a Tasks extension for long-running workMEMORY — The Python 0.116.0, TypeScript 0.110.0, and Go 1.56.0 SDKs now send agent-memory-2026-07-22 on every memory store callSPILL — Output from agent_toolset and MCP tools past 100K characters now spills to a file in the sandbox, with the model receiving a truncated preview it can expandBG — MCP tool calls running past two minutes move to the background automatically, keeping the session usable; tune it with CLAUDE_CODE_MCP_AUTO_BACKGROUND_MSRESUME — Typing /resume in the agent view opens a picker of past sessions and brings your pick back as a background session
Articles/Claude Code
Claude Code/2026-04-07Advanced

Claude Code × Flutter: Complete App Development Guide — Accelerating Mobile Development with Dart and AI

A practical guide to using Claude Code for Flutter development. From auto-generating Dart code to state management, UI design, test automation, and App Store submission — a complete roadmap for indie developers.

flutterdartmobile4claude-code129app-development4ios14android9

Premium Article

How Flutter × Claude Code Transforms Indie Development

Flutter is Google's framework for building natively compiled apps for iOS, Android, web, and desktop from a single codebase. For indie developers running both App Store and Google Play in 2026, it remains one of the most rational choices available.

That said, Flutter development has its own learning curve: Dart's unique syntax, deeply nested widget trees, the variety of state management libraries (Riverpod, Bloc, Provider), and the complexity of platform-specific configuration files. Even experienced developers spend significant time on these areas.

Claude Code substantially eliminates these friction points. This guide walks through a practical workflow — from project setup to App Store submission — using Claude Code at every stage.

If you haven't set up Claude Code yet, check out the Claude Code workflow automation guide first.


1. Setting Up Claude Code for a Flutter Project

Giving Claude Code Project Context via CLAUDE.md

For Claude Code to generate accurate Flutter code, it needs project-specific context upfront. Create a CLAUDE.md at your project root:

# MyApp — CLAUDE.md
 
## Tech Stack
- Flutter 3.24 / Dart 3.5
- State management: Riverpod 2.x (StateNotifier + AsyncNotifier patterns)
- Routing: go_router 13.x
- Networking: dio + retrofit
- Local DB: Hive 4.x
- Testing: flutter_test + mocktail + integration_test
 
## Directory Structure
lib/
├── features/        # Feature-first architecture
│   └── {feature}/
│       ├── data/    # Repository / DataSource
│       ├── domain/  # UseCase / Entity
│       └── presentation/ # Page / ViewModel
├── core/            # Shared utilities
└── generated/       # Riverpod code generation output
 
## Coding Conventions
- All widgets extend ConsumerWidget
- Async operations use AsyncNotifierProvider
- No Navigator.push — use go_router's context.go / context.push
- l10n: ARB files with Japanese + English required
 
## Testing Strategy
- Business logic: Unit tests (80%+ coverage)
- UI: WidgetTests (critical paths only)
- E2E: integration_test (5+ major flows)

With this CLAUDE.md loaded, Claude Code understands your architecture before writing a single line.

Recommended .claude/settings.json

{
  "permissions": {
    "allow": [
      "Bash(flutter:*)",
      "Bash(dart:*)",
      "Bash(fvm:*)",
      "Write(lib/**)",
      "Write(test/**)",
      "Write(integration_test/**)"
    ]
  }
}

Explicitly allowing flutter and dart commands means Claude Code can run flutter pub get, dart format, and flutter test autonomously after generating code.


Thank you for reading this far.

Continue Reading

What follows includes implementation code, benchmarks, and practical content we hope you'll find useful. This site runs without ads — server and development costs are supported entirely by members like you. If it's been helpful, we'd be truly grateful for your support.

WHAT YOU'LL LEARN
Learn how to design a CLAUDE.md system prompt that gives Claude Code accurate Flutter project context
Practical patterns for auto-generating and refactoring Riverpod / Bloc state management code
How to delegate WidgetTest and integration_test writing to Claude Code, cutting QA effort by 70%
Secure payment via Stripe · Cancel anytime

Unlock This Article

Get full access to the rest of this article. Buy once, read anytime. This site is ad-free — your support goes directly toward keeping it running.

or
Unlock all articles with Membership →
Share

Thank You for Reading

Claude Lab is ad-free, supported entirely by members like you. We publish practical guides daily with implementation code, benchmarks, and production-ready patterns. If you've found it useful, we'd love to have you on board.

  • Copy-paste ready implementation code
  • New advanced guides published daily
  • $5/mo or $10 for lifetime access
View Membership →

Related Articles

Claude Code2026-06-12
Fixing Overlapping Paywall and Review Dialogs on Android with a Central ModalGate
How I fixed three dialogs — paywall, review prompt, and rewarded-ad promo — stacking on top of each other with a priority-based central gate, plus the three dismiss-leak paths a Claude Code design review uncovered.
Claude Code2026-06-12
Untangling Android Back-Button Ad Gates: A Parallel, Priority-Ordered Redesign with Claude Code
Nested back-button ad gates fired at the wrong moments. The parallel, priority-ordered redesign we shipped in v2.1.0, with Claude Code, Kotlin, and tests.
Claude Code2026-06-03
Triaging iOS Test Failures Fast: Parsing .xcresult with Claude Code
Xcode 16 deprecated xcresulttool's legacy JSON, changing how you pull test failures out of a .xcresult bundle. Here's how to shape the new test-results format with jq and hand it to Claude Code to pinpoint the cause and a fix, drawn from running six apps in parallel.
📚RECOMMENDED BOOKS
Build a Large Language Model (From Scratch)
Sebastian Raschka
LLM Dev
Prompt Engineering for LLMs
Berryman & Ziegler
Prompting
AI Engineering
Chip Huyen
AI Eng
* Contains affiliate links
See all →