🔥 Eliminate duplicate code in your Flutter projects with DCM’s check code duplication command! Watch our latest video to learn how to quickly detect duplicates, adjust sensitivity with the --statements-threshold flag, and customize reports for your CI/CD pipeline. 👉 https://lnkd.in/ecJMBggD
About us
DCM is an advanced linter for Dart and Flutter developers. DCM provides 350+ useful lint rules, 22 metrics and a various refactoring commands (to find unused files, unused code and more) to help developers save several hours a week by making fewer mistakes and speeding up code reviews.
- Website
-
https://dcm.dev/
External link for DCM Analyzer
- Industry
- Software Development
- Company size
- 2-10 employees
- Headquarters
- Tbilisi
- Type
- Privately Held
- Founded
- 2022
Locations
-
Primary
Tbilisi, GE
Employees at DCM Analyzer
Updates
-
✨ Tip: Avoid unnecessary collections in your Dart code! Why? - Wrapping a single element in a collection is often redundant. - It makes your code less efficient and harder to read. - Use value directly instead of [value] where possible. ✅ Examples: - await Future.wait([future]) → await future - _array.addAll([value]) → _array.add(value) Learn more: https://lnkd.in/eD3WW67j
-
🧐 Ever stumbled upon a function that made you rethink how you write code? We just published a blog exploring 10 lesser-known Dart and Flutter functions that you may not have seen before but they can simplify your code and make your life easier. Not only do we show you how to use them, but we also analyze their implementation to uncover best practices you can apply in your own projects. Which lesser-known function has surprised you the most? Let us know 👇! 📖 https://lnkd.in/ek5Tem-n
-
🎉 We’re excited to announce DCM 1.27.0! This version comes packed with powerful updates including: - 4 new rules for catching subtle issues - New built-in presets (e.g., "async", "collections") for quicker project setup - Reworked metrics console reporter for better insights at a glance - Closed beta for DCM Dashboards - Plus many other improvements, including the ability to disable ignore comments on specific rules and enhanced IntelliJ plugin compatibility. Read the full release details in our blog post! https://lnkd.in/emntw58k
-
✨ Pro Tip: Be cautious when overriding a getter that’s already passed to super! ⚠️ Why? - It can cause unintended behavior. - The overridden getter may conflict with the inherited field. - Instead of overriding, reference the super field or remove the getter. 💡 DCM automatically detects and helps fix these cases for more reliable code. Learn more: https://lnkd.in/eHmVNC-j
-
-
🚀 Announcing DCM Dashboards (Closed Beta)! Welcome to an intelligent high-level overview of all issues and metrics across your projects. What’s inside? ✅ See all open issues & track over time – no more guesswork on progress ✅ Track code quality across multiple projects – whether a package or monorepo ✅ Understand technical debt impact – with estimated fix times & issue tracking ✅ Visualize key metrics – complexity, violations, and performance ✅ Get quick insights on memory leaks, performance issues, potential bugs and etc. ✅ Coming soon: Intelligent Advisory – smarter way to ensure code quality adoption This is just the beginning and will keep bringing more features to dashboards in the future! Read more: https://lnkd.in/eQFp6QBX
-
✨ Tip: Avoid unexpected output in your #Flutter apps by checking for null before using string interpolation! ⚠️ Why? - Printing a nullable value can lead to unclear or unintended results. - Always check for null before using a value in a string. - Configure exceptions for log or debugPrint if needed. Read more: https://lnkd.in/egfr9t42
-
❓ Using a Row or Column #Flutter widget with just one child? It might be a mistake! Learn more about how you can fix it and why it’s important in this video: https://lnkd.in/e_JxawFe
avoid-single-child-column-or-row (Rules of the Week)
https://www.youtube.com/
-
✨ Tip: Keep your Dart functions and methods concise by removing or renaming unused parameters! 🛠 DCM helps identify unused parameters and suggests removing them, or renaming them to `_` (if the parameter is intentionally unused). Learn more about this rule in this video: youtu.be/ODCEwW6p39Q
avoid-unused-parameters (Rules of the Week)
https://www.youtube.com/
-
✨ Pro Tip: Organize your Flutter projects by following the "one widget per file" principle! DCM ensures that each widget has its own file, promoting: - Single responsibility for better maintainability - Better structured codebases - Easier collaboration within teams This rule has ⚙️ config option: - Ignore private widgets (ignore-private-widgets: true) for flexibility. To learn more, check out our doc: https://lnkd.in/es5uxGWy
-