Weekly GitHub Report for Mermaid: August 17, 2026 - August 24, 2026 (22:01:32)
Weekly GitHub Report for Mermaid
Thank you for subscribing to our weekly newsletter! Each week, we deliver a comprehensive summary of your GitHub project's latest activity right to your inbox, including an overview of your project's issues, pull requests, contributors, and commit activity.
Table of Contents
I. News
1.1 Recent Version Releases:
The current version of this repository is @mermaid-js/[email protected]
1.2 Version Information:
On March 25, 2025, a minor update was released that introduced the addition of a Radar Chart, enhancing the charting capabilities of the platform. This update reflects ongoing efforts to expand visualization options.
II. Issues
2.1 Top 5 Active Issues:
We consider active issues to be issues that that have been commented on most frequently within the last week. Bot comments are omitted.
-
[CONTRIBUTOR NEEDED] [STATUS: AWAITING REPLY] [TYPE: NEW DIAGRAM] Support for C4 Models: This issue requests native support for C4 architecture models within Mermaid diagrams, aiming to improve integration with tools like Azure DevOps Wiki and reduce reliance on external tools such as PlantUML or Vizio. Users discuss the current experimental state of C4 diagrams in Mermaid, highlighting challenges with layout, relationship line clarity, and the desire for features like clickable transitions between diagram levels and syntax improvements to better match C4 modeling conventions.
- The comment thread includes users experimenting with current Mermaid flowchart capabilities for C4 diagrams, sharing alternative tools and exporters like Structurizr DSL, and discussing layout issues caused by Mermaid’s directional flowchart engine. Contributors provide detailed comparisons with other tools, propose syntax enhancements, and note ongoing development efforts to improve layout algorithms and feature completeness, while also emphasizing the value of native Mermaid support for C4 to unify documentation workflows across platforms.
- Number of comments this week: 2
-
[TYPE: ENHANCEMENT] [CONTRIBUTOR NEEDED] [STATUS: APPROVED] [GRAPH: STATE] Use linkStyle with stateDiagram: This issue requests the ability to use the
linkStylefeature with state diagrams in Mermaid, as currentlylinkStyledoes not affect links in state diagrams, limiting the ability to visually denote paths. The user suggests enabling link color changes in state diagrams to improve clarity and notes that whilelinkStyleworks in flowcharts, it is not supported in state diagrams.- Comments confirm the lack of current support for styling edges in state diagrams and acknowledge it as a reasonable enhancement. One contributor expresses interest in implementing this feature, outlining a detailed plan for adding
linkStylesupport with thorough testing and documentation, and discloses the use of AI assistance in the development process. - Number of comments this week: 2
- Comments confirm the lack of current support for styling edges in state diagrams and acknowledge it as a reasonable enhancement. One contributor expresses interest in implementing this feature, outlining a detailed plan for adding
-
[TYPE: BUG / ERROR] [STATUS: TRIAGE] [STATUS: APPROVED] [INTERNALS: RENDERER] [GRAPH: C4] C4: padding and margins: This issue addresses several layout and spacing problems in the rendering of C4 diagrams within GitHub markdown, including excessive padding around diagram edges, insufficient sizing of component boxes, and poor placement of components leading to overlapping relations. It highlights differences in rendering behavior between Firefox and Chromium browsers and suggests that upcoming changes in the unified C4 renderer will resolve most of these issues by applying consistent padding, reserving space for boundary titles, and improving component arrangement.
- The comments explain that the unified C4 renderer under development will fix most of the reported problems by standardizing padding and layout, with specific pull requests addressing each point; however, some issues persist in Firefox, possibly due to engine-specific bugs, and users report mixed results with the current fixes, especially on Firefox.
- Number of comments this week: 2
-
[TYPE: ENHANCEMENT] [CONTRIBUTOR NEEDED] [STATUS: APPROVED] [GRAPH: GANTT] [GOOD FIRST ISSUE!] Show exact range on hover for Gantt chart: This issue requests the addition of a tooltip feature to the Gantt chart that displays the exact start and end dates of tasks when hovered over, improving clarity on task durations. The proposed implementation involves using the SVG
<title>element to show detailed date ranges, with considerations for date format customization and accessibility.- The comments show community interest and willingness to contribute, with multiple users offering help and discussing design considerations. Progress updates include a contributor working on adding native SVG
<title>elements to task bars, aiming to respect date formatting and add regression tests, while also considering potential impacts on themes and downstream projects. - Number of comments this week: 1
- The comments show community interest and willingness to contribute, with multiple users offering help and discussing design considerations. Progress updates include a contributor working on adding native SVG
-
[STATUS: TRIAGE] [STATUS: AWAITING REPLY] [TYPE: NEW DIAGRAM] Component Diagram: This issue requests the addition of UML component diagram support to Mermaid, as the current tool lacks this diagram type which is important for software architects who use component diagrams to represent system components, interfaces, and their relationships. The discussion highlights the need for features like nested components, ports, provided and required interfaces, and relationships between these elements, with some users sharing early proof-of-concept work and debating the complexity of implementing such diagrams compared to existing tools like PlantUML.
- The comment section shows strong community support with many +1s, detailed suggestions on required features, shared early prototypes, and discussions about challenges in layout and relationships; maintainers are seeking clarification on how component diagrams differ from existing diagram types in Mermaid, while users emphasize the necessity of full UML component diagram support for professional and educational use.
- Number of comments this week: 1
2.2 Top 5 Stale Issues:
We consider stale issues to be issues that has had no activity within the last 30 days. The team should work together to get these issues resolved and closed as soon as possible.
As of our latest update, there are no stale issues for the project this week.
2.3 Open Issues
This section lists, groups, and then summarizes issues that were created within the last week in the repository.
Issues Opened This Week: 10
Summarized Issues:
- Rendering and Diagram Display Issues: Several issues describe problems with rendering and display inconsistencies in Mermaid diagrams. These include unpredictable text node positions in
venn-betadiagrams, rendering crashes in C4 diagrams due to incorrect$tagsattribute processing, and mis-sized labels with detached edges caused by ancestor CSS transforms affecting viewport measurements. - issues/8076, issues/8099, issues/8113
- Parsing and Naming Rules in Diagrams: There is a parsing inconsistency where actor names with attached configuration objects are subject to more restrictive naming rules than those without, causing rendering errors in sequence diagrams. This inconsistency leads to confusion and errors in diagram generation.
- issues/8085
- Initialization and Type Errors: Mermaid version 11.17.0 fails to initialize and throws a TypeError when a global
definefunction exists on the page, whereas version 11.16.1 works correctly under the same conditions. This regression causes failures in environments wheredefineis globally defined. - issues/8095
- CSS Configuration and Styling Limitations: Multiple issues highlight problems with CSS handling in Mermaid. The
themeCSSconfiguration string is discarded if it contains a CSS child combinator due to sanitization removing certain characters, and thecompileCSS()function excludes@font-faceat-rules, preventing webfonts from being applied in standalone SVGs. - issues/8105, issues/8106
- Class Directive Ineffectiveness on Icon Nodes: The
classDefandclassdirectives do not affect nodes using icon shapes in flowcharts because these nodes bypass the usual class merging function. This causes user-defined CSS classes to be dropped and not applied to icon nodes, limiting styling capabilities. - issues/8107
- Test Filtering and CI Failures: Issues with test filtering scripts cause CI end-to-end tests to fail immediately. The
detectScopescript emits glob patterns that Playwright misinterprets as regular expressions, and scoped test filters contain invalid regex due to double asterisks, both leading to syntax errors and failed test runs. - issues/8102, issues/8111
2.4 Closed Issues
This section lists, groups, and then summarizes issues that were closed within the last week in the repository. This section also links the associated pull requests if applicable.
Issues Closed This Week: 3
Summarized Issues:
- Diagram Rendering Issues: There are problems with rendering relations in C4 diagrams and sequence diagrams in Mermaid. One issue involves relations from container boundaries to containers not rendering correctly, while another involves line breaks in sequence diagrams being inconsistently honored due to a regex state bug in the label wrapping function.
- issues/4864, issues/8037
- Security Vulnerability in Dependency Versioning: The project sets the dependency version floor for
dompurifyto a vulnerable version 3.3.3, which is flagged by security audit tools due to CVE-2026-65903. The issue requires updating the version floor to 3.4.0 where the vulnerability is fixed to resolve these security concerns. - issues/8067
2.5 Issue Discussion Insights
This section will analyze the tone and sentiment of discussions within this project's open and closed issues that occurred within the past week. It aims to identify potentially heated exchanges and to maintain a constructive project environment.
Based on our analysis, there are no instances of toxic discussions in the project's open or closed issues from the past week.
III. Pull Requests
3.1 Open Pull Requests
This section provides a summary of pull requests that were opened in the repository over the past week. The top three pull requests with the highest number of commits are highlighted as 'key' pull requests. Other pull requests are grouped based on similar characteristics for easier analysis. Up to 25 pull requests are displayed in this section, while any remaining pull requests beyond this limit are omitted for brevity.
Pull Requests Opened This Week: 20
Key Open Pull Requests
1. feat(c4): support AddElementTag and AddRelTag styling: This pull request introduces support for named styling tags in the C4 diagram syntax via AddElementTag and AddRelTag, enabling elements and relationships to reference predefined styles for colors and shapes through $tags, with precedence rules ensuring explicit styles override tags, and includes safeguards for color interpolation and shape resolution within the unified rendering pipeline.
- URL: pull/8101
- Associated Commits: 1ead8, a9dde, 255d1, 75b6d, 334e1, e9bbb, 01f3e, 64094, 181c9, 30325, a4f35, 2a3f3, 17c10, 8593d
2. feat(quadrant): add word wrap and markdown support: This pull request adds automatic word wrapping and markdown formatting support—including bold, italic, nested styles, and explicit line breaks—to quadrant charts in Mermaid, enhancing label readability by implementing a custom recursive markdown parser and character-level wrapping without adding asynchronous overhead or new dependencies.
- URL: pull/8084
- Associated Commits: 78153, 73edb, ffa21, 75556, f9708, aef92, c2586, 821da, e8562, 737ad, 223e2, df2f8
3. fix: stop relying on fastdom's UMD export detection: This pull request fixes Mermaid initialization failures caused by FastDOM’s UMD export incorrectly resolving when a global define function is present by recovering the FastDOM core singleton from window.fastdom, vendoring the fastdom-promised wrapper locally to avoid reliance on problematic UMD exports, adding a local fallback core for environments lacking module exports or globals, and enhancing typings and error handling with comprehensive tests to ensure robust promise-based APIs and export recovery.
- URL: pull/8109
Other Open Pull Requests
- Gantt Chart Improvements: Multiple pull requests enhance Gantt chart usability by adding native SVG tooltips that display formatted start and end dates on hover and fixing overlapping vertical labels through a row-packing algorithm that dynamically adjusts the SVG viewBox height. These changes improve both interactivity and visual clarity, supported by regression and unit tests.
[pull/8077, pull/8083]
- Diagram Styling Enhancements: Several pull requests address styling capabilities across different diagram types, including adding
linkStylesyntax for state diagram transitions with validation and indexing, fixing customfill:styles in erDiagram entities to apply consistently to all rows, and correcting CSS class application for icon shapes to ensure user-defined styles reach the DOM. These updates improve styling flexibility and correctness with updated tests and documentation.
[pull/8081, pull/8082, pull/8108]
- C4 Diagram Fixes: Pull requests fix bugs in C4 diagram rendering by ensuring named attributes like
$tags,$sprite, and$linkare correctly handled without being wrapped as text objects, and by validating color values inUpdateElementStyleandUpdateRelStylefunctions to prevent invalid CSS injection. These fixes enhance rendering accuracy and security with comprehensive tests.
[pull/8100, pull/8087]
- End-to-End Testing Workflow Improvements: Multiple pull requests refactor and improve the CI end-to-end testing process by replacing Bash scripts with a robust TypeScript uploader that balances image uploads and supports dry-run mode, updating the workflow to upload screenshots to separate Argos projects for better baseline management, fixing invalid glob patterns in test scope detection, and correcting emitted test filters to use valid Playwright regex patterns. These changes increase reliability and maintainability of testing infrastructure with added unit and regression tests.
[pull/8094, pull/8098, pull/8098, pull/8112]
- Sequence Diagram Parser Update: A pull request updates the sequence diagram parser's Actor definition by modifying the lexer regex to ensure actors followed by configuration objects conform to naming rules, accompanied by additional unit tests and documentation to maintain consistency.
[pull/8086]
- Documentation Additions and Fixes: Pull requests add the free web tool text2diagram to the LLM integrations documentation and rewrite the contributor guide for adding new diagrams to align with current workflows, including a new Layout Maker’s Guide. Another pull request fixes 18 broken blog post links caused by domain migration, ensuring all URLs return HTTP 200 without content changes. These updates improve documentation accuracy and contributor experience.
[pull/8070, pull/8115, pull/8075]
- KaTeX Note Padding Fix: A pull request fixes excessive padding in KaTeX notes over sequence diagram participants by preserving rendered MathML dimensions during sizing, preventing redundant re-measurement and ensuring consistent note width with added unit tests and visual fixtures.
[pull/8110]
3.2 Closed Pull Requests
This section provides a summary of pull requests that were closed in the repository over the past week. The top three pull requests with the highest number of commits are highlighted as 'key' pull requests. Other pull requests are grouped based on similar characteristics for easier analysis. Up to 25 pull requests are displayed in this section, while any remaining pull requests beyond this limit are omitted for brevity.
Pull Requests Closed This Week: 20
Key Closed Pull Requests
1. Release Candidate 11.17.0: This pull request introduces Mermaid version 11.17.0 as a release candidate, featuring multiple new shapes (folder, bucket, console, browser, and a person shape), enhanced unified rendering for class diagrams and C4 elements, collapsible subgraphs in flowcharts and ER diagrams, improved layout handling with ELK integration and configuration options, a TypeScript migration of the C4 diagram implementation, numerous bug fixes including rendering and parsing improvements, and various quality-of-life and performance enhancements for both users and developers.
- URL: pull/8071
- Associated Commits: 35881, 876ab, 3f725, a396d, 6738c, 180b3, 83fad, 5289e, f34ee, 2deda, ea8ee, 80d7d, 5b151, 36f91, b7f72, d6938, a1aff, 00430, 90a35, 63a4e, f2401, 8bc65, 20f03, 693d1, 2ef8c, e8ea3, 5c3a7, c7308, 8eb3a, 530e9, c637c, a5ccc, 04e12, 1d190, 9076a, df0d5, fa8f5, 0c741, b5ad7, 8c6f1, c4619, 62497, cdfc0, 89f2e, 9841d, c256e, f878d, 08728, cd749, c81fc, 2364d, bf2db, 0aab8, 5cfa9, 16e11, eea48, d8447, 9f956, a34cb, 95327, 28d1c, 4a0e4, a0449, e2c9e, b5f24, be498, 128f9, c875f, 89a68, fc3e3, ef429, ca41d, e68fd, 581aa, 4e1bf, 215fe, 6510e, e4ada, 3a466, cbb79, 94a8f, 97634, ef022, 92a4e, 06dcd, 0d374, 3c71c, eae66, 71b88, a2d96, 8d874, d683d, 9cf68, 5ac7c, 35d07, 1265e, 026cc, 22d53, 165f6, 8f930, 4a816, 77b1b, 8e67a, 1910d, df0bc, 6d162, 8be14, efe15, 7fb55, 90497, 0b226, e6abf, bbb30, 46554, 9d54e, 8c72f, 5b94e, 5ec0b, 4c14a, c4ef3, 06758, 8a024, bec4a, 493ba, 47dce, a56a4, 30d64, adfb4, 59339, 625ab, 050ca, cea49, 63e68, 155bd, 6bcfb, 92575, f8e8f, b68b7, 35f8d, bca69, a8ea3, 13a93, 6a6a5, 148c2, 38ca1, d1f6e, cc229, 7c037, 388cc, 59825, f6816, f6540, 9cbef, 338c9, 449e5, ac08c, 5c877, 59442, 0d1ee, 183b3, 158e2, f3dea, 1e9c7, 45b27, f0ffb, ee061, 56219, 46d72, 0bf10, 70226, d7630, 0a678, 1dad4, 13e01, b60d1, a4512, a61fe, 9665f, 1e0a4, 21a10, 627fc, 4bc79, 8bb0b, ae3e1, cba28, 3670b, e7867, f6893, 5edc5, eef07, 36473, 2377c, 04f8c, 19563, 756e0, 4bbea, 69060, af05d, a2c0f, 9f49d, a5894, f0f96, 372fe, dc6f5, 3d521, d93e9
2. test(e2e): migrate Cypress suite to Playwright: This pull request replaces the entire Cypress end-to-end testing suite with Playwright, migrating all rendering and integration tests, updating configurations, porting Applitools integration, enhancing visual snapshot handling with Argos, implementing native V8 coverage reporting, synchronizing with both master and develop branches to incorporate new test cases and fixes, and hardening CI workflows for secure and efficient Playwright test execution.
- URL: pull/8091
- Associated Commits: b3d1f, 7ba4b, 4150c, b5a74, 349eb, 8628e, 1127c, 0a07b, f484a, 293b1, 0233e, 05229, 217ce, 4801e, fd410, f2896, 7a38a, f6045, 8f2da, d6b81, ce895, f8fa2, b0d0a, 5b5ea, af035, 8d4b6, e66f8, 73eac, 01795, 8b224, 6e64c, 102e7, 571bc, 409b0, e9b68, 46957, 66600, c5dd3, 11f16, b1a9d, 82f3e, b94d7
3. Migrate e2e tests from Cypress to Playwright: This pull request migrates the Mermaid end-to-end testing suite from Cypress to Playwright, restructures visual snapshot tests into .mmd fixture files with a global runner, enhances the Argos visual regression pipeline by batching and scaling screenshot sheets with detailed metadata, enforces stricter error diagram handling, and fixes various fixture issues to improve test reliability and maintainability.
- URL: pull/7881
- Associated Commits: ef4e6, f2832, 473b8, 87a06, dc6a1, 17511, ae58d, d2e47, 4aedf, 65e7a, affa2, 60585, 731b9, b7c01, 46043, e56f0, 49a97, 65e13, 753f9, 9081c, 0b7fb, 52030
Other Closed Pull Requests
- End-to-end test screenshot sheet ordering and manifest improvements: Multiple pull requests enhance the management of end-to-end test screenshot sheets by introducing an append-only ordering manifest to reduce unnecessary re-tiling and churn, changing the ordering of unpinned screenshots to follow test declaration order, and adding scheduled workflows to refresh and compact the manifest. These changes also include refactoring scripts to remove Argos-specific naming, consolidating CLI scripts, and adding canary tests to verify layout stability when tests are added or removed.
- [pull/7905, pull/7908, pull/8093, pull/8096, pull/8097, pull/8104]
- Class diagram relation marker scaling fixes: Two pull requests address issues in class diagrams where relation markers were incorrectly scaled with edge stroke width, causing oversized and clipped markers. The fix involves setting
markerUnits="userSpaceOnUse"on affected markers to ensure correct sizing without impacting other diagram types or themes. - [pull/8079, pull/8092]
- ELK layout theme and marker rendering fixes: Pull requests fix rendering bugs in the ELK layout where neo-look arrowheads and crow's-foot markers did not initialize theme configurations properly on first render, and markers used default theme variables instead of the host instance's configuration. These fixes ensure proper rendering by using the host instance's initialized configuration and restoring correct marker appearance.
- [pull/8078, pull/8088]
- C4 diagram renderer boundary alias resolution: A pull request fixes an issue where relationship endpoints referencing boundary aliases were incorrectly reported as unknown shapes by extending endpoint lookup to include boundaries and introducing a shared
C4Elementtype. This update includes geometry computation changes and regression tests to ensure boundary aliases resolve correctly without affecting existing behavior. - [pull/7874]
- End-to-end testing workflow refactor and upload improvements: One pull request refactors the Argos baseline upload process by replacing an inline bash script with a unit-tested TypeScript script that merges grouped sheets and screenshots, efficiently bin-packs directories to avoid HTTP 413 errors, and simplifies the workflow step without changing upload behavior.
- [pull/7904]
- Markdown rendering and Node.js environment updates: A pull request upgrades the
markedmarkdown rendering library to version 18.0.6, updates the Node.js version to 24.16.0, fixes thevalidate-lockfileGitHub Action to allow unsafe pull request checkouts, excludes unreliable external links from the link checker, and ensures all related tests pass. - [pull/7990]
- Text wrapping and explicit line break preservation in labels: Two pull requests restore text wrapping for C4 element labels to prevent overly long unbroken lines and fix an issue where explicit line breaks (
<br/>) were lost due to regex state advancement by replacing.test()withString.prototype.search(). These changes preserve manually inserted line breaks without changing the API or documentation. - [pull/8038, pull/8092]
- Documentation improvements for maxTextSize configuration: A pull request adds comprehensive documentation for the
maxTextSizeconfiguration option across user guides and FAQs, improves the related error message to provide actionable guidance, and clarifies thatmaxTextSizeis a secure key that cannot be overridden via frontmatter or directives. - [pull/7779]
- End-to-end test coverage expansion for sequence diagrams and mindmaps: A pull request adds 87 new tests covering previously untested syntax in sequence diagrams and mindmaps, including central-connection message types, participant type matrices, note positions, flow constructs, and formatted labels with emojis and special characters, ensuring all tests pass without modifying source code or configuration.
- [pull/8104]
- Venn diagram keyword alias addition: A pull request adds the keyword 'intersection' as a mathematically accurate alias for 'union' in the Venn diagram feature, maintaining backward compatibility by treating both keywords identically at the parser level and improving error messages to reflect the specific keyword used.
- [pull/7917]
- Layout-elk package version update and changeset strategy adjustment: A pull request updates the layout-elk package from version 0.2.2 to 0.3.0 and changes the changeset strategy to use patch releases instead of minor ones to avoid breaking changes due to special handling of 0.x versions in NPM.
- [pull/8078]
- Master branch merge into development: A pull request merges the master branch back into the development branch to incorporate Release 11.17.0 and the Playwright migration, ensuring the development branch is up to date with these changes.
- [pull/8090]
3.3 Pull Request Discussion Insights
This section will analyze the tone and sentiment of discussions within this project's open and closed pull requests that occurred within the past week. It aims to identify potentially heated exchanges and to maintain a constructive project environment.
Based on our analysis, there are no instances of toxic discussions in the project's open or closed pull requests from the past week.
IV. Contributors
4.1 Contributors
Active Contributors:
We consider an active contributor in this project to be any contributor who has made at least 1 commit, opened at least 1 issue, created at least 1 pull request, or made more than 2 comments in the last month.
If there are more than 10 active contributors, the list is truncated to the top 10 based on contribution metrics for better clarity.
| Contributor | Commits | Pull Requests | Issues | Comments |
|---|---|---|---|---|
| filipsajdak | 86 | 10 | 4 | 19 |
| sidharthv96 | 40 | 6 | 0 | 2 |
| aloisklink | 36 | 0 | 0 | 0 |
| pbrolin47 | 24 | 4 | 0 | 1 |
| tobias-maslowski | 26 | 1 | 0 | 0 |
| webdevsamran | 9 | 2 | 0 | 0 |
| syawqy | 9 | 1 | 0 | 0 |
| ashishjain0512 | 6 | 3 | 0 | 0 |
| knsv | 7 | 1 | 0 | 0 |
| claude | 7 | 0 | 0 | 0 |