Announcing DCM Dashboards (Closed Beta)
For the past two years we were focusing on a various parts of the product, and added:
- more than 300 new unique lint rules
- new code metrics
- new commands:
analyze-assets
,analyze-widgets
,analyze-structure
,check-code-duplication
,check-dependencies
and more... - baseline and built-in presets
While all those features help you maintain your codebase and be more productive, there was still one problem that the tool was not helping you with: getting an overview of all your issues and metrics, and how they change over time.
Today we are excited to announce DCM Dashboards that will help exactly with that! 🚀
DCM Dashboards​
DCM Dashboards is a new part of our product (available as a new separate page in DCM Teams Console) that will help you get a clear view of all open issues (from lint rules and code quality commands) and metrics, and how the numbers change over time.
Projects overview​
Let's start with the "Projects Overview". This section provides a high-level summary of all active projects. DCM Dashboards will allow you to create multiple projects for your organization.
These projects can represent a single package or a full mono-repo. It's up to you how you want to organize your projects.
Issues overview​
Next, there is the "Issues Overview". It provides a breakdown of issues grouped by categories (with the estimated time to fix all issus and how that number of issues has changed compared to the previous month) and is designed to show you the latest state of your project.
Beyond just presenting the numbers, this section is designed to help you identify potential risks and missed issues that could impact performance, stability or memory leaks.
Some issues might not be immediately obvious but can lead to long-term inefficiencies or technical debt that's why by bringing these to your attention early, our goal is that you can take proactive steps to resolve them.
Open issues over time​
While the "Issues Overview" goal is to show the latest state, this section called "Open issues over time" is designed to visualize how the number of issues changes.
You will be able to choose an interval from 7, 14, 30 or 90 days and choose how the issues are groped (All issues
by default).
Baselined issues over time​
Aside from the open issues, there is another type of issues that can change over time (that you also might have): issues added to the baseline.
If you are not familiar with the baseline, check out this documentation page and this guide on integrating DCM into existing project.
The goal of the "Baselined issues over time" section is to show how the number of baselined issues changes over time.
Given that those are basically ignored issues, you usually still want to reduce this number to 0 to ensure there are no hidden problems or bugs. This is exactly where this section should help with.
Right now only the lint rules are supported by baseline, but we are working on making it available for all DCM code quality commands.
Metrics​
And the last section with charts is for metrics.
It will only show you the metrics you have enabled in your project and give a separate chart for each value a metric has: min, max, avg, sum and the number of violations. It also supports changing the interval.
Advisory (coming soon)​
Our goal is to make the dashboards more intelligent, guiding you toward better rule adoption and ensuring you don’t overlook key improvements.
The Advisory will help you discover and enable impactful rules or metrics that might have been missed, newly introduced, or not yet enabled in your project. DCM comes with over 400 rules, this section ensures you’re leveraging the most relevant checks to detect and fix critical issues in your code.
This feature is not included into this release, but will soon be available. Stay tuned!
What else (and a few words about Privacy)?​
The dashboards will also show you a list of all issues (from rules and commands), a list of metric violations and your configuration (without any sensitive data).
As we are continuing with our commitment to take as less of your data as possible, the dashboards will not include any of your code or paths to files.
We understand that this might make the experience a bit worse, but you will still have an opportunity to run all DCM commands locally and the goal for the dashboards is to provide you with an overview (and for that, collecting your code is not necessary).
Getting access​
If your team is a DCM Teams plan, you are eligible to participate in the closed beta! Please reach out to us at [email protected] from your account email.
If your team still uses the old license without access to DCM Teams Console, switching to the new license will be required to have access to DCM Dashboards.
Please note that this is a closed beta and you might experience some issues or lack some rich functionality.
If you prefer to use a more stable version, consider waiting until this feature is generally available.
Getting started​
With the release of DCM 1.27.0, the dcm run
command will have 3 new flags: --upload
, --project
and --with-details
:
--upload
- to indicate that the results of the command should be uploaded--project
- to pass the identifier of the project in your DCM Dashboards--with-details
- to switch to a more detailed mode. By default the command will only upload a summary and configuration. With this flag the command will also upload a list of issues and metrics.
If you are not familiar with dcm run
, check out this documentation page.
Once you get access and create your first project, you can start uploading the results of this command to DCM Dashboards. We'll also provide additional guidance to all closed beta users to ensure you get started successfully.
Next steps​
Our current plan is to run the closed beta for one month to gather feedback from our active users. If the dashboards prove useful and require no significant changes, we'll make them generally available in the middle of March 2025.
We'll publish another blog post for the general availability, plus provide a detailed roadmap for you to better understand the upcoming features.
Stay tuned for more updates!
Sharing your feedback​
If you still have questions or suggestions, please reach out via email [email protected] or on our Discord server.