Advertisement · 728 × 90

Posts by DCM

Preview
Practical Accessibility in Flutter (and Code You’ll Actually Use) | DCM - Code Quality Tool for Flutter Developers Flutter makes it possible to build beautiful apps and with a bit of effort, beautiful, accessible apps. The great thing is that many accessibility improvements are small tweaks that have big impact.

Is your #Flutter app silently excluding users?

In our new blog:
✅ New accessibility features in Flutter 3.32
✅ Fixing common pitfalls (labels, text scaling, contrast)
✅ Automated testing with meetsGuideline & more
✅ Practical code examples & tools

dcm.dev/blog/2025/06...

3 days ago 2 0 0 0
Post image

A small #Flutter lint that can prevent confusing layout issues: avoid-flexible-outside-flex.

This rule warns when Flexible is used outside a Flex widget, such as Row, Column, or Flex, helping keep widget tree layouts working correctly.

Read more: dcm.dev/docs/rules/f...

3 days ago 3 0 0 0
Preview
Riverpod Best Practices You're Probably Missing | DCM - Code Quality Tool for Flutter Developers Learn how the Riverpod package works by reading its source code. Understand the architecture behind Flutter reactive state management and discover why certain patterns prevent bugs, memory leaks, and ...

Riverpod is one of the most used packages for #Flutter, and yet you might have missing points, including:

⚠️ ref .read inside build
🔄 ref .watch outside build
⏳ async gap + stale ref
🧹 missing onDispose cleanup

Read more: dcm.dev/blog/2026/03...

4 days ago 2 0 0 0
Post image

Many teams want better code quality but struggle to know where to start.

Techniques such as:
1⃣ preview all metrics first
✅ start with metrics-recommended
✏️ override thresholds for your project
👩‍💻 choose metrics based on your actual pain points

Read more: dcm.dev/docs/guides/...

1 week ago 1 0 0 0
Post image

Complex conditions can impact readability in your #Flutter code.

❌ Instead of: (a && b) || (!a && c)
✅ Prefer: a ? b : c

DCM’s "prefer-simpler-boolean-expressions" rule flags redundant #Dart boolean patterns and suggests more readable alternatives.

Read more: dcm.dev/docs/rules/c...

1 week ago 1 0 0 0
Post image

Arrange, Act, Assert is the gold standard for unit testing 🧪

Why? It ensures tests are not doing "multiple rounds of arrange and act."

DCM 1.32 introduced `prefer-test-structure` to warn when a test is not separated into these three sections.

Read more: dcm.dev/docs/rules/c...

1 week ago 0 0 0 0
Preview
The Hidden Cost of Async Misuse in Flutter (And How to Fix It) | DCM - Code Quality Tool for Flutter Developers Uncover hidden Flutter performance issues & memory leaks! Learn to spot & fix common async/await misuses like unawaited Futures.

Async mistakes can quietly slow down or break your #Flutter app. This post breaks down common pitfalls and how to fix them:
🔄 Misused `FutureOr`
⚠️ Unawaited futures in `initState()`
🔁 Redundant `async/await`
🚦 Inefficient parallel calls
🧵 Confusing `.then()` chains

dcm.dev/blog/2025/05...

2 weeks ago 6 1 0 0
Preview
Zuehlke Customer Story | DCM - Code Quality Tool for Flutter Developers With DCM, Zühlke engineers spend less cognitive effort on repeat comments, PR reviews move faster, and the team has fewer runtime issues thanks to strict structural and leak-prevention rules.

In fact, Nicholas, Team Lead at Zühlke, puts it nicely on how DCM is playing a role:

“Integrate DCM from the start, before writing a single line of code. It saves enormous effort later.”

Read the full case study: dcm.dev/customers/zu...

1 week ago 0 1 0 0

One feature stands out: memory leak detection, as Djordje, Lead Software Architect and People Lead at Zühlke says:

"Memory leak detection helps a lot. I might not notice every time, DCM warns me immediately."

That proved especially valuable in complex reactive flows.

1 week ago 0 1 1 0
Advertisement

With DCM, the Zühlke engineering team enforces:
📐 Architectural import rules
💀 Unused code checks
✅ Translation checks
🚪 CI quality gates
⏱️ Custom rules like clock .now()
🚀 Maintainability metrics like complexity & nesting depth

And that's not all!

1 week ago 0 1 1 0

Zühlke engineering team adopted DCM for its speed, depth, and architectural features with a baseline-first approach.

The baseline helped them introduce strict rules without breaking the existing codebase, & to gradually review the rules together during weekly team meetings.

1 week ago 0 1 1 0

Zühlke scaled complex Flutter projects to 14 developers!

💻 When designing a multi-layered structure that includes domain, application, infrastructure, & UI, it becomes difficult to maintain consistency.

Without guardrails, PR reviews became repetitive & the architecture broke.

1 week ago 2 1 2 0
Post image

🎉 A case study with Zühlke was published!

They use DCM to keep complex, mission-critical #Flutter apps maintainable across healthcare, industrial engineering, and enterprise projects.

💯 Result: faster PRs, fewer regressions, and better visibility into technical debt.

How?👇

1 week ago 3 0 1 0
Preview
Flutter BLoC Best Practices You're Probably Missing | DCM - Code Quality Tool for Flutter Developers Learn how the BLoC pattern works by reading its source code. Understand the architecture behind Flutter state management and discover why certain patterns prevent crashes and memory leaks.

#Flutter BLoC is everywhere, but hidden bugs are easy to miss:
💥 isClosed after await
🔁 same-state emits
🧠 create vs .value
🚫 public methods bypass events
🔒 sealed/immutable classes

By reading BLoC source code, we see how to happen & prevent them: dcm.dev/blog/2026/03...

2 weeks ago 5 1 1 0
Preview
Flutter BLoC Best Practices You're Probably Missing | DCM - Code Quality Tool for Flutter Developers Learn how the BLoC pattern works by reading its source code. Understand the architecture behind Flutter state management and discover why certain patterns prevent crashes and memory leaks.

#Flutter BLoC is everywhere, but hidden bugs are easy to miss:
💥 isClosed after await
🔁 same-state emits
🧠 create vs .value
🚫 public methods bypass events
🔒 sealed/immutable classes

By reading BLoC source code, we see how to happen & prevent them: dcm.dev/blog/2026/03...

2 weeks ago 5 1 1 0
Preview
The Hidden Cost of Async Misuse in Flutter (And How to Fix It) | DCM - Code Quality Tool for Flutter Developers Uncover hidden Flutter performance issues & memory leaks! Learn to spot & fix common async/await misuses like unawaited Futures.

Async mistakes can quietly slow down or break your #Flutter app. This post breaks down common pitfalls and how to fix them:
🔄 Misused `FutureOr`
⚠️ Unawaited futures in `initState()`
🔁 Redundant `async/await`
🚦 Inefficient parallel calls
🧵 Confusing `.then()` chains

dcm.dev/blog/2025/05...

2 weeks ago 6 1 0 0
Preview
CarOnSale Customer Story | DCM - Code Quality Tool for Flutter Developers While it’s difficult to quantify the exact number of bugs prevented, CarOnSale’s teams have observed tangible benefits, ultimately increasing developer confidence in code quality across projects.

As Roman said: "We've been using DCM since day zero... we genuinely can't imagine working without it. Any serious project should adopt it.”

Read the entire case study: dcm.dev/customers/ca...

2 weeks ago 0 0 0 0
Advertisement

The impact was clear as manual code reviews alone simply weren't enough and standard linters lacked the depth needed for their real-world apps.

🔥 By integrating DCM analysis directly into their workflow, they stopped wasting time hunting for structural mistakes.

2 weeks ago 0 0 1 0

Using DCM since "day zero", they enabled:
✍️ Unified quality baselines for all Dart & Flutter codebases
📉 DCM rules & advanced metrics dashboards
💯 Automated early detection of code regressions

2 weeks ago 1 0 1 0

Imagine the need to catch subtle anti-patterns, prevent regressions, and automate best practices without increasing developer overhead while ensuring high-quality code across an expanding engineering team!

That is hard task to do!

2 weeks ago 0 0 1 0
Post image

🎉 We just published a case study with CarOnSale, Europe's fast-growing B2B automotive platform. They secure their Flutter mobile apps and internal libraries with DCM.

💯 The results? Smoother code reviews, automated consistency, & increased developer confidence across teams👇

2 weeks ago 1 0 2 0
prefer-container (Rules of the Week)
prefer-container (Rules of the Week) YouTube video by DCM Analyzer

Is your #Flutter widget tree full of Padding, Align, ClipRect and Transform widgets?

In this video, we show how you can simplify those trees using a single Container widget and how the "prefer-container" rule helps you reduce unnecessary nesting: youtu.be/MdrU_8orso8

2 weeks ago 0 0 0 0
Preview
Zed Extension | DCM - Code Quality Tool for Flutter Developers Community-driven: This Zed integration is maintained by the community (third-party repository) and is not officially maintained or supported by the DCM team. Functionality and stability may evolve ind...

If you are using Zed and would like to have your code checked with DCM, check out the getting started docs for the Zed extension: dcm.dev/docs/ide-int...

2 weeks ago 0 0 0 0
Preview
BoursoBank Customer Story | DCM - Code Quality Tool for Flutter Developers With DCM in place, BoursoBank significantly improved the runtime safety and consistency of their Flutter codebase. Errors that previously slipped through to production are now caught early, even when ...

DCM improved BoursoBank's Flutter runtime safety, catching errors early before production. Applied to 60+ packages, DCM gave developers confidence that sensitive payment and authentication flows are protected.

Read the entire case study: dcm.dev/customers/bo...

3 weeks ago 1 0 0 0

Using DCM, they enabled:
🔸 Pre-commit hooks & strict CI checks
🔸 ~20 targeted, safety-first linting rules enabled
🔸 Automated elimination of unsafe APIs & provider lookup errors
🔸 Sonar-compatible reporting for internal governance

👇

3 weeks ago 0 0 1 0
Advertisement

Scaling a 60+ package monorepo with developers transitioning from web to Dart while maintaining strict banking compliance wasn’t easy!

Imagine needs for strict CI checks, auto-detection, and automation to eliminate unsafe APIs with Sonar-compatible reporting!

👇

3 weeks ago 1 0 1 0
Post image

We just published a case study with BoursoBank, France’s largest online bank!

They secure mission-critical #Flutter mobile & web apps with DCM.

💯 The results? maintainable architecture, & zero crashes in payment & authentication flows for 70+ engineers

Here's how they do it 👇

3 weeks ago 1 0 1 0
Preview
10 Flutter Widgets Probably Haven’t Heard Of (But Should Be Using!) | DCM - Code Quality Tool for Flutter Developers In this article, I want to share some of those hidden gems I’ve discovered lesser-known widgets and functionalities that can simplify your development process and add a unique touch to your apps. More...

Ever discovered a Flutter widget and thought, “Why didn’t I see this sooner?” 🤔

We’ve uncovered 10 under-the-radar widgets that even seasoned devs almost never use! 👇

dcm.dev/blog/2025/01...

What widget surprised you the most?

3 weeks ago 5 1 0 0
Preview
Flutter Provider Best Practices You're Probably Missing | DCM - Code Quality Tool for Flutter Developers Learn how the Provider package works by reading its source code. Understand the architecture behind Flutter dependency injection and discover why certain patterns prevent bugs and memory leaks.

Are silent bugs hiding in your #Flutter Provider code?

You might be missing:
💥 .value trap
🚫 .dispose gap
👀 .read vs .watch
✋ .selector logic

We explored the Provider's source code to uncover common architecture mistakes: dcm.dev/blog/2026/03...

3 weeks ago 0 0 0 0
Post image

Once you have multiple #Flutter projects, it's often required to manage different DCM versions.

Our new guide covers:
🔄 Fast version switching
💻 Helper scripts (Zsh, Bash, Fish, PS)
💙 FVM support
🤝 Team consistency with dcm_global.yaml

Read here: dcm.dev/docs/guides/...

3 weeks ago 1 0 0 0