Sign in

DCM

@dcm.dev
213 followers 33 following 180 posts

Advanced linter for Flutter and Dart developers dcm.dev. Join our discord discord.gg/Vzjprgk4sb. "its not AI, but it’s better!"

PostsRepliesMedia
DCM @dcm.dev · 16/04/2026
🔥 DCM 1.36.0 includes 11 new rules for Flutter, Common, Equatable, & Mocktail categories. To learn how these rules can prevent potential issues and bugs, read: dcm.dev/blog/2026/03...
000
DCM @dcm.dev · 01/04/2026
Advanced metrics configuration in DCM is where metrics become practical. You’re not limited to one global threshold. You can tune metrics for legacy code, new features, widget-heavy UI, critical paths, and even dashboards-only tracking. In this guide, learn how you can do it 👇
100
DCM @dcm.dev · 31/03/2026
🚀 Quality code tip: Use the variable you already created. It's easy to miss, but the "use-existing-variable" rule dcm.dev/docs/rules/c... catches repeated expressions when a variable already exists. 🪧 Less code 🔁 Less duplication ✅ Fewer inconsistencies
010
DCM @dcm.dev · 26/03/2026
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...
030
DCM @dcm.dev · 20/03/2026
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/...
010
DCM @dcm.dev · 19/03/2026
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...
010
DCM @dcm.dev · 18/03/2026
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...
000
DCM @dcm.dev · 16/03/2026
🎉 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?👇
130
DCM @dcm.dev · 12/03/2026
🎉 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👇
210
DCM @dcm.dev · 06/03/2026
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 👇
110
DCM @dcm.dev · 03/03/2026
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/...
010
DCM @dcm.dev · 24/02/2026
We recently published a case study with Betterment where the team adopted DCM into their workflow, which helped them to: - Cut feedback cycles from minutes to seconds - Focus on architecture review rather than styling - Ship faster & safer Full story: dcm.dev/customers/be...
000
DCM @dcm.dev · 03/09/2025
Ever written a function that always returns the same value (like "true")? 🤔 It usually means the logic isn’t doing what you think. The "function-always-returns-same-value" rule catches these bugs before they spread! 👉 dcm.dev/docs/rules/c...
000
DCM @dcm.dev · 25/08/2025
🔥 13 new rules! DCM 1.31.0 is out and we've added 13 new rules that include Riverpod and #Flutter best practices, as well as common practices for #Dart. ➡️ Learn more about new rules in our latest blog: dcm.dev/blog/2025/08...
020
DCM @dcm.dev · 18/08/2025
DCM 1.31.0 is here! 🎉 🔧 13 new rules 🤖 DCM MCP Server 💾 Memory optimization for code quality commands 🧩 Baseline for check-parameters 📋 more rules in Free and Starter plans 📊 JSON/CSV for lints-preview, Dashboard improvements, and more. 👉 dcm.dev/blog/2025/08...
010
DCM @dcm.dev · 12/08/2025
Using `_` instead of `context`? You might be referencing the wrong `BuildContext`. That can lead to subtle bugs. 🔗 Here is a rule to help you quickly find such issues: dcm.dev/docs/rules/f... #Flutter #Dart
010
DCM @dcm.dev · 07/08/2025
If your #Flutter widget tree has a matching sequence of "Align", "Padding", "ClipPath", and others, it can often be replaced with a single "Container" widget. Use the "prefer-container" rule to simplify the layout dcm.dev/docs/rules/f...
072
DCM @dcm.dev · 06/08/2025
DCM 1.30.0 includes better baseline support in Dashboards! 🚀 ✅ Toggle between open & baselined issues ✅ New Baseline tab for projects 🔗 Learn more in our blog: dcm.dev/blog/2025/07...
010
DCM @dcm.dev · 28/07/2025
💡 Why removing commented-out-code matters? ✅ It often hides unfinished work or dead logic ✅ Adds noise and confusion for other devs ✅ Git handles history anyway Learn more → dcm.dev/docs/rules/c...
010
DCM @dcm.dev · 23/07/2025
🚀 No more SizedBox hacks!🚀 Flutter 3.27 added a "spacing" argument to Row, Column, and Flex 🙌 And with the "prefer-spacing" rule you can quickly find such cases in your #Flutter codebase → dcm.dev/docs/rules/f...
030
DCM @dcm.dev · 21/07/2025
Creating a new Future inside FutureBuilder in #Flutter? That restarts the async task every rebuild. Pass an existing Future from "initState", not from "build". 🔗Learn more how to fix this: dcm.dev/docs/rules/f...
020
DCM @dcm.dev · 18/07/2025
🎉 DCM 1.30.0: 22 New Lint Rules! Our latest release introduced 22 new lint rules to boost code quality in #Dart and #Flutter code! Check out our new rules: dcm.dev/blog/2025/07...
050
DCM @dcm.dev · 17/07/2025
📊 DCM 1.30.0 Dashboards updates: ✔️ Removed "--with-details" flag ✔️ New summary views for issues & metrics ✔️ Toggle & tab for baselined issues ✔️ Smaller uploads Full details → dcm.dev/blog/2025/07...
000
DCM @dcm.dev · 09/07/2025
DCM v1.30.0 is out! 🔥 22 new rules 🚀 Baseline: support for code quality commands 📉 Baseline: sensitivity levels 📊 Dashboard enhancements ✅ Updated "recommended" preset 🎁 More rules in Free & Starter plans & more… Learn more 👉 dcm.dev/blog/2025/07...
000
DCM @dcm.dev · 24/06/2025
❓ Why declare a variable too soon? The `move-variable-closer-to-its-usage` rule suggests moving variable declarations closer to where they’re actually used, reducing memory allocations and potentially heavy calculations. 🔗 dcm.dev/docs/rules/c...
000
DCM @dcm.dev · 18/06/2025
New in DCM Dashboards: Printable Reports ✅ Sharing insights internally ✅ Sending updates to stakeholders or clients ✅ Creating professional PDF summaries Fast. Simple. Shareable. Read more: dcm.dev/blog/2025/04...
010
DCM @dcm.dev · 13/06/2025
🔁 Ever find yourself repeating the same method call within a single block of code? The "prefer-moving-to-variable" rule helps catch those duplications and encourages assigning the result to a variable instead. Learn more → dcm.dev/docs/rules/c...
020
DCM @dcm.dev · 10/06/2025
Declaring the same variable inside a loop when it doesn’t need to be? Our `move-variable-outside-iteration` rule helps avoid unnecessary declarations of variables that can be declared only once. 🔗 dcm.dev/docs/rules/c...
000
DCM @dcm.dev · 09/06/2025
🧐 Got a GestureDetector with no handlers? The "avoid-unnecessary-gesture-detector" rule warns when you're wrapping widgets for interaction but forget to add handlers like "onTap". No handler == no purpose. 🔗 dcm.dev/docs/rules/f...
000
DCM @dcm.dev · 04/06/2025
Stay Ahead of Code Quality with Insightful Trends! Our issue tracking now gives you a clear view of: ✅ Estimated fix time 📈 30-day change 🔍 Group by issue type 📅 7-90 day charts ⚠️ Spot issues early, even unintentional ones → dcm.dev/blog/2025/04...
000
DCM @dcm.dev · 28/05/2025
🔍 Using `is`, `whereType`, or pattern matching when the result is always true? The `avoid-unnecessary-type-assertions` rule flags these redundant checks. 🔗 dcm.dev/docs/rules/c... #FlutterDev #Dart
000
DCM @dcm.dev · 26/05/2025
Tracking multiple #Flutter projects across your org? In DCM Dashboards: 🚦 Aggregated Overview ✅ Health check across all projects 📊 Trends & % changes over 30 days 🔍 Spot org-wide risks & improvements fast 👉 dcm.dev
010
DCM @dcm.dev · 22/05/2025
❗️Repeated equal nested conditions in your #Flutter code? The "no-equal-nested-conditions" rule helps quickly spot such cases. Duplicate nested conditions are usually typos or even bugs and should be timely fixed! Learn more: dcm.dev/docs/rules/c... #FlutterDev #Dart
000
DCM @dcm.dev · 19/05/2025
Tracking down #Flutter technical debt just got easier! Our new dashboard helps teams see, prioritize, and act on issues like: 🧠 Readability problems 🐞 Potential bugs ♻️ Duplicate & unused code 📁 Unused files ⚙️ Performance issues and more! 👉 dcm.dev
031
DCM @dcm.dev · 08/05/2025
🛑 Using Function without specifying parameters or return type in your #Flutter widgets? It disables type checks and can lead to sneaky bugs. Instead, declare function types as "void Function()". 🔗 dcm.dev/docs/rules/c...
020
DCM @dcm.dev · 05/05/2025
🚀 Generate Shareable #Flutter Code Quality Reports in Seconds! Just hit Ctrl+P / Cmd+P to export a PDF with: 🐞 Bugs 📖 Readability issues 🔁 Duplicate/unused code 🚦 Performance issues No extra steps, share with anyone fast. 📎 Learn more: dcm.dev/blog/2025/04...
020
DCM @dcm.dev · 28/04/2025
🤔 Declaring a nullable return type but always returning null? The "function-always-returns-null" rule helps you catch this pattern so you can either return something meaningful or refactor the function altogether. 🔗 dcm.dev/docs/rules/c...
000
DCM @dcm.dev · 25/04/2025
🚀 Announcing DCM Dashboards general availability An ultimate solution to monitor code quality for your #Flutter projects. ✅ Never let important issues slip ✅ Visualize technical debt ✅ Track trends within your org ✅ Share reports with stakeholders
160
DCM @dcm.dev · 14/04/2025
Checking a variable for null but not using it afterwards? The "avoid-unused-after-null-check" rule flags that! If you’re not using the value, why check it? 🧐 Learn more: dcm.dev/docs/rules/c...
020
DCM @dcm.dev · 07/04/2025
❓ Declaring a return type as nullable when it’s always non-null? "avoid-unnecessary-nullable-return-type" warns when a function is marked as returning nullable, but always returns a non-null value. More here: dcm.dev/docs/rules/c...
010
DCM @dcm.dev · 04/04/2025
🇫🇷 Bonjour, Flutter Connection Paris 2025! We're proud to sponsor this amazing event and support the #Flutter community. Wishing all speakers, attendees, and organizers an inspiring and productive conference @flutterconnection.bsky.social! 💙🛠️ #FlutterConnection #FlutterDev #Dart
020
DCM @dcm.dev · 02/04/2025
❓Using .first, .last, or [] on a list without checking if it’s empty? The "avoid-unsafe-collection-methods" rule flags such usages as they can throw at runtime. Prefer safer alternatives in your #Flutter apps like .firstOrNull or .elementAtOrNull from the "collection" package.
140
DCM @dcm.dev · 04/03/2025
❓ Using unnecessary collections in your Dart code? ⚠️ Wrapping a single element in a collection is often redundant! Learn more: dcm.dev/docs/rules/c...
000
DCM @dcm.dev · 17/02/2025
❓ Overriding a getter that’s already passed to super? This can cause unexpected behavior! Instead of redefining it, reference the super field or remove the override. Learn more: dcm.dev/docs/rules/c...
040
DCM @dcm.dev · 11/02/2025
❓ Ever printed a nullable value in Dart and got unexpected output? ⚠️ Using nullable values in string interpolations can cause issues. Always check for null before using them to keep your logs and UI reliable! Read more: dcm.dev/docs/rules/c...
000
DCM @dcm.dev · 28/01/2025
✨ Keep your Flutter code organized with the "one widget per file" approach! 🛠 DCM suggests moving each widget into its own file to follow single responsibility principles and improve maintainability. Learn more: dcm.dev/docs/rules/f...
000
DCM @dcm.dev · 23/01/2025
✨ Simplify your #Flutter widget trees! 🛠 DCM suggests replacing sequences of widgets (e.g., Align, Padding, Transform) with a single Container. This reduces nesting and makes your code more readable. ➡️ dcm.dev/docs/rules/f...
081
DCM @dcm.dev · 21/01/2025
✨ Working on making your app accessible? DCM warns when an Image widget lacks a "semanticLabel". Adding labels helps accessibility tools describe your images, making apps more accessible. 🔗 Learn more: dcm.dev/docs/rules/f...
010
DCM @dcm.dev · 17/01/2025
Are you using the Opacity widget with the Image widget? ⚠️ It's inefficient! For better performance, pass the opacity parameter directly to the Image widget. Learn more: dcm.dev/docs/rules/f... #FlutterDev #Flutter
0102
DCM @dcm.dev · 14/01/2025
🔥 DCM 1.26.0 New Rules 🔥 The DCM 1.26.0 has 17 new rules for #Dart and #Flutter. Check out some of the examples below 👇
100